首页 > 解决方案 > 更新到 nextjs@10.4 后找不到模块'webpack/lib/node/NodeTemplatePlugin'

问题描述

在我更新到 nextjs 后,10.1.3我在启动时遇到了错误yarn dev

error - ./public/static/style.scss
Error: Cannot find module 'webpack/lib/node/NodeTemplatePlugin'
Require stack:
- /path_to/node_modules/mini-css-extract-plugin/dist/loader.js
- /path_to/node_modules/next/dist/compiled/webpack/bundle4.js
- /path_to/node_modules/next/dist/compiled/webpack/webpack.js
- /path_to/node_modules/next/dist/next-server/server/config-utils.js
- /path_to/node_modules/next/dist/next-server/server/config.js
- /path_to/node_modules/next/dist/next-server/server/next-server.js
- /path_to/node_modules/next/dist/server/next.js
- /path_to/node_modules/next/dist/server/lib/start-server.js
- /path_to/node_modules/next/dist/cli/next-dev.js
- /path_to/node_modules/next/dist/bin/next

Could not find files for /[lang] in .next/build-manifest.json
Could not find files for /[lang] in .next/build-manifest.json
event - compiled successfully

我发现了类似的问题,但它并没有解决我的问题。

我删除了包和锁定文件,还尝试安装 webpack 等阅读此.

这让我又犯了一个关于tap是什么驱使我这样做的错误,所以我删除了我刚刚所做的,所以回到上面的第一个错误。

这是我的next.config.js

const withSass = require('@zeit/next-sass');
const withCSS = require("@zeit/next-css");

module.exports = withCSS(withSass({
    webpack(config, options) {
        config.module.rules.push({
            test: /\.(png|jpg|gif|svg|eot|ttf|woff|woff2)$/,
            use: {
                loader: 'url-loader',
                options: {
                    limit: 100000
                }
            }
        });
        return config;
    }
}));

标签: javascriptnode.jswebpacknext.js

解决方案


所以我的设置与您的设置类似,即 Next.js 与 Antd 和 Less。升级到最新版本的 nextjs (10.2.0) 后,我最近收到此错误。对我来说幸运的是,我偶然发现了这个问题并单击了您附加的类似问题链接,我从那里得到了解决方案。我通过安装解决了这个问题webpack

npm i webpack@webpack-4 --save-dev

希望这会节省别人的时间:)。干杯


推荐阅读