运行webpack-dev-server——config config/webpack.dev.js——progress——profile——watch——content-base src/时出错。下面是错误日志:

module.js:442
throw err;
^

Error: Cannot find module 'webpack/bin/config-yargs'
at Function.Module._resolveFilename (module.js:440:15)
at Function.Module._load (module.js:388:25)
at Module.require (module.js:468:17)
at require (internal/module.js:20:19)
at Module._compile (module.js:541:32)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:458:32)
at tryModuleLoad (module.js:417:12)
at Function.Module._load (module.js:409:3) 

当前回答

我试了下面几句,问题解决了:

由于问题是webpack-dev-server,所以转到node-modules。 找到webpack-dev-server,然后去依赖项 查看webpack和webpack-cli的依赖信息及其版本。 重新安装相同版本的名称。

然后尝试重新运行dev-server。

在我的例子中: "dev-server": "webpack-dev-server——open"

控制台: 运行dev-server

其他回答

一般情况是由于Webpack与Webpack -dev-server版本不兼容。 就像我也有这个问题,我的电脑的webpack是1.15.0,但webpack-dev-server是2。X以上版本。 所以我卸载webpack-dev-server: npm卸载webpack-dev-server -g 然后安装1.15.0版本的webpack-dev-server,你可以通过npm install webpack-dev-server@1.15.0 -g来解决这个问题

我通过运行npm start来解决这个问题,这只是一个运行“webpack-dev-server”的包装器,而不是直接在控制台运行webpack-dev-server。问题是我把选项传递给了一个我不应该传递选项的方法。

用npm start运行webpack-dev-server显示了正确的错误消息。直接运行webpack-dev-server只给了我“错误:无法找到模块'webpack/bin/config-yargs'”。奇怪。

我在: :“webpack ^ 2.6.1”, :“webpack-dev-server ^ 2.7.1”

我也遇到过类似的问题。我认为这与webpack版本有关。

2021年7月更新

拥有“webpack-cli”:“^4或以上”版本,以及“webpack”:“^5或以上”版本的人,。

你可以尝试用这个命令更新你的webpack版本

npm install --save-dev webpack webpack-cli webpack-dev-server

现在去你的包裹。Json,在scrpits下添加这一行

"dev": "webpack serve --mode development --env development"

这对我来说很管用。

更新Webpack版本(和Webpack命令行):

npm install --save-dev webpack webpack-cli webpack-dev-server webpack-merge

如果您不使用上面提到的任何一种,请随意省略。

这通常是由于库之间的版本不匹配(包括webpack/yargs,在你的情况下)。当您将一个项目搁置了一段时间,并且node_modules目录中的一些依赖项已经过时时,这种情况会经常发生。一个非常简单的解决方案,在对不同版本的东西大惊小怪之前,只是把你的node_modules目录移动到一个临时位置,然后重新运行npm install:

% mv node_modules nod_modules.REMOVED
% npm install

然后,尝试重新运行webpack。