运行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": "^4.5.0",
 "webpack-dev-server": "^3.11.2"

此错误出现在yarn启动过程中,包中的以下条目。特定于脚本的Json。attr开始。

 "scripts": {
    "start": "webpack-dev-server --open",
    "build": "webpack"
  }

所以,webpack-dev-server——open正在寻找webpack-cli 3.3版本。我通过安装特定版本的webpack-cli工作包摆脱了这个错误。Json是这样的:

  "webpack-cli": "3.3",
  "webpack-dev-server": "^3.11.2"

但是,如果你不想降级webpack-cli版本,将"start": "webpack-dev-server——open"更新为"start": "webpack serve——open"

其他回答

问题出在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"
}

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

解决方案

package.json

"scripts": {
    "startdev": "webpack serve --mode development --env development --hot --port 3000"
    ...
    ...
  },
"devDependencies": {
...
    "webpack": "^5.10.1",
    "webpack-cli": "^4.2.0"
 },

控制台

$ npm run startdev

如果你正在使用webpack-cli 4或webpack 5,将webpack-dev-server更改为webpack serve。

例子:

"serve": "webpack serve --config config/webpack.dev.js --progress"

你可能还想看看GitHub上的这条评论:

NPM包。Json脚本是一种方便而有用的运行方式 本地安装的二进制文件,而不必关心它们的 完整路径。简单地定义一个脚本如下: 对于webpack-cli 3.x: "scripts": {"start:dev": "webpack-dev-server"} 对于webpack-cli 4.x: "scripts": {"start:dev": "webpack serve"}

我已经安装了以下依赖项(没有指定任何特定版本)

 "webpack-cli": "^4.5.0",
 "webpack-dev-server": "^3.11.2"

此错误出现在yarn启动过程中,包中的以下条目。特定于脚本的Json。attr开始。

 "scripts": {
    "start": "webpack-dev-server --open",
    "build": "webpack"
  }

所以,webpack-dev-server——open正在寻找webpack-cli 3.3版本。我通过安装特定版本的webpack-cli工作包摆脱了这个错误。Json是这样的:

  "webpack-cli": "3.3",
  "webpack-dev-server": "^3.11.2"

但是,如果你不想降级webpack-cli版本,将"start": "webpack-dev-server——open"更新为"start": "webpack serve——open"