运行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版本有关。更改webpack版本后,最新的一切都很好…

其他回答

这是因为webpack-cli版本的变化。

如果webpack-cli版本号小于4。使用webpack-dev-server 如果webpack-cli版本号为4。X或更高,你可以使用webpack服务

3.执行命令webpack-cli。X及以下

    "scripts": {
      "dev-server": "webpack-dev-server"
    }

对于webpack-cli。X及以上

    "scripts": {
      "dev-server": "webpack serve"
    }
    "scripts": {
      "dev-server": "webpack serve "
    }

来源:webpack dev-server

当我只在本地安装webpack而没有在全局安装它时,我也会出现这个错误。

我已经在全球安装了webpack-dev-server,它依赖于webpack的全球安装。公平地说,npm在安装webpack-dev-server时确实抱怨过:

未满足对等依赖webpack@^2.2.0

上面的答案对我都没用。如果你仍然得到这个错误,你可以试试这个,这解决了我的问题:

打开node_modules \ webpack-dev-server \ bin \ webpack-dev-server.js 修改第84行:require('webpack-cli/bin/config-yargs')(yargs);

To:

要求(webpack-cli / bin / config / config-yargs) (yargs); 修改第92行:const config = Require ('webpack-cli/bin/convert-argv')(yargs, argv, {

To:

const config = require('webpack-cli/bin/utils/convert-argv')(yargs, argv, {

将命令"serve":"webpack -dev-server"修改为"serve":"webpack serve"即可解决此问题。我已经在webpack开发服务器v3.11.0和v3.11.2上尝试了这个解决方案;对我来说,两者都很好。

尝试将webpack版本改为3.0,web-dev-server版本改为2.7.1

Eg:

"devDependencies": {
    "webpack": "^3.0.0",
    "webpack-cli": "2.0.13",
    "webpack-config-utils": "2.0.0",
    "webpack-dev-server": "^2.7.1",
    "webpack-validator": "2.2.7"
}