运行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-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版本有关。

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"

这对我来说很管用。

我刚刚解出来了。

问题出在index.html的路径上。

来自:

<script src="./dist/myBundle.js"></script>

to:

<script src="myBundle.js"></script>

这是因为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-cli版本:

npm install -D webpack-cli@3

新版本处于测试阶段,可能会修复这个错误。

问题出在webpack-cli的新版本上。如果webpack-cli <= 3。X webpack-dev-server包工作正常。对于webpack-cli >= 4。X,使用NPX webpack serve命令运行本地服务器。

For webpack-cli 3.x:
"scripts": {
  "start:dev": "webpack-dev-server --mode=development"
}

For webpack-cli 4.x:
"scripts": {
  "start:dev": "webpack serve --mode=development"
}