运行:

npm run dev

或:

npx webpack-dev-server

启动本地服务器。

遇报错:Error: Cannot find module 'webpack-cli/bin/config-yargs'

详情如下:


C02Z84E5LVCF:mm_webpack maomao$ npm run dev

> mm_webpack@0.1.0 dev /Users/maomao/Documents/demo/h5/mm_webpack
> webpack-dev-server

internal/modules/cjs/loader.js:775
    throw err;
    ^

Error: Cannot find module 'webpack-cli/bin/config-yargs'
Require stack:
- /Users/maomao/Documents/demo/h5/mm_webpack/node_modules/webpack-dev-server/bin/webpack-dev-server.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:772:15)
    at Function.Module._load (internal/modules/cjs/loader.js:677:27)
    at Module.require (internal/modules/cjs/loader.js:830:19)
    at require (internal/modules/cjs/helpers.js:68:18)
    at Object.<anonymous> (/Users/maomao/Documents/demo/h5/mm_webpack/node_modules/webpack-dev-server/bin/webpack-dev-server.js:65:1)
    at Module._compile (internal/modules/cjs/loader.js:936:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:947:10)
    at Module.load (internal/modules/cjs/loader.js:790:32)
    at Function.Module._load (internal/modules/cjs/loader.js:703:12)
    at Function.Module.runMain (internal/modules/cjs/loader.js:999:10) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/Users/maomao/Documents/demo/h5/mm_webpack/node_modules/webpack-dev-server/bin/webpack-dev-server.js'
  ]
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! mm_webpack@0.1.0 dev: `webpack-dev-server`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the mm_webpack@0.1.0 dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/maomao/.npm/_logs/2021-05-27T12_13_34_511Z-debug.log
C02Z84E5LVCF:mm_webpack maomao$ 

解决办法:

方法一:删除node-modules文件夹,重新运行npm install。对我无效。
方法二:网上说是webpack版本兼容问题,需降级webpack-cli版本
现有版本:

  "devDependencies": {
    "webpack": "^5.38.0",
    "webpack-cli": "^4.7.0",
    "webpack-dev-server": "^3.11.2"
  }

可以降级webpack-cli版本到3.x

运行:

npm install webpack-cli@3 -D

webpack-cli大版本降至3.x

降级之后:

  "devDependencies": {
    "webpack": "^5.38.0",
    "webpack-cli": "^3.3.12",
    "webpack-dev-server": "^3.11.2"
  }

然后再运行

npm run dev

运行成功。