运行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 4上也遇到了同样的问题。

这是版本兼容问题。

要解决这个问题,请执行以下命令在webpack 4中安装webpack-cli。

 yarn add webpack-cli -D

其他回答

在我的案例中,解决方案就是使用以前的版本

"webpack": "^4.44.1",
"webpack-cli": "^3.3.12",
"webpack-dev-server": "^3.11.0"

更新:3月21日

尝试用下面的命令更新你的webpack依赖项

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

如果它不工作,然后使用如下

我有这些依赖,但我面临同样的问题

"webpack": "^5.6.0",
"webpack-cli": "^4.2.0",
"webpack-dev-server": "^3.11.0"

我找到了一个解决方案,添加一个新的脚本或在你的开始脚本包。Json对我很有用。所以你也可以试试这种方法。

"dev": "webpack服务-模式开发-环境开发"

我通过运行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-cli和webpack-dev-server之后),可以

npm --depth=9999 upgrade

这应该可以修复版本不匹配的问题。

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

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

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