【问题标题】:too much .js, and .css files are generated in Nextjs.js太多,Nextjs生成.css文件
【发布时间】:2021-11-03 05:50:08
【问题描述】:

我正在使用 nextjs 和 Typescript。我实现了我的 Web 应用程序,但在生产模式下,我看到太多 .js 和 .css 文件已加载,并且此过程按顺序而不是并行发生。我认为 nextjs 应该在一个 webpack 文件中生成所有这些过程,但它不会发生。我该怎么办?对字体、图像、js 文件和 .css 文件有任何想法吗?还有一点我应该说。我正在使用与 Nextjs 文档中提到的指令相反的 SCSS 文件,它们被放置在 components 文件夹及其子文件夹中,而不是 styles 文件夹中。

const withPlugins = require("next-compose-plugins");
const nextTranslate = require("next-translate");
const withPWA = require("next-pwa");
const withBundleAnalyzer = require("@next/bundle-analyzer")({
  enabled: process.env.ANALYZE === "true",
});

// next.js configuration
const nextConfig = {
  images: {
    domains: ['ibexcdn.com'],
  },
};

module.exports = withPlugins(
  [
    [
      nextTranslate,
      {
        webpack: (config, { isServer, webpack }) => {
          return config;
        },
      },
    ],
    withBundleAnalyzer,

    [
      withPWA,
      {
        pwa: {
          disable: process.env.NODE_ENV === "development",
          dest: 'public',
          runtimeCaching: [
            {
              urlPattern: /.(?:eot|otf|ttc|ttf|woff|woff2|font.css)$/i,
              handler: 'NetworkFirst',
              options: {
                cacheName: 'static-font-assets',
                expiration: {
                  maxEntries: 4,
                  maxAgeSeconds: 7 * 24 * 60 * 60 // 7 days
                }
              }
            }
          ]
        },

      },
    ],
  ],
  nextConfig,
);

【问题讨论】:

  • 不应该只有一个文件使它成为巨大的有效载荷。检查您的代码或文档中的代码拆分配置
  • @Sagar 但正如您在附加图像中看到的那样,加载了太多与主页无关的 CSS 文件,并且一些相关的 CSS 文件的加载大小非常小一种顺序的方式。还有一点我应该说。我正在使用与 Nextjs 文档中提到的指令相反的 SCSS 文件,它们放置在 components 文件夹及其子文件夹中,而不是 styles 文件夹中。
  • 检查你的 webpack 设置以及你如何导入 comps 可能会有所帮助

标签: reactjs typescript webpack next.js frontend


【解决方案1】:

看起来您向组件添加了很多导入,创建了一个包含 1 个 API 请求的空页面,并查看了加载的资源和脚本。

之后,尝试逐一添加组件,看看会发生什么。

这是检查发生了什么的唯一正确方法

另外,delete libs 您没有用于您的项目,请检查您的项目的package.json 文件。

【讨论】:

  • 谢谢,@illia chill。我更新了我的问题。您还有其他建议吗?
  • 我做了你所有的建议,但仍然没有用。我只用一个 API 创建了一个页面,没有任何导入,但仍然有很多 js、css 和字体文件
猜你喜欢
  • 2013-12-05
  • 2019-11-18
  • 2016-06-30
  • 2021-06-21
  • 2019-03-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-24
相关资源
最近更新 更多