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

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

出于安全原因,

'Github' 要求我将 'webpack-dev-server' 更新到版本 3.1.11 或更高版本。

但是,'npm run dev'更新后不会运行。

我不解决这个问题

错误:找不到模块 'webpack-cli/bin/config-yargs'

'package.json'的代码如下

  "dependencies": {
    "@vue/cli-plugin-babel": "^3.5.1",
    "config": "^3.0.1",
    "vue": "^2.5.2",
    "vue-router": "^3.0.1"
  },
  "devDependencies": {
    "vue-jest": "^1.0.2",
    "vue-loader": "^13.3.0",
    "vue-style-loader": "^3.0.1",
    "vue-template-compiler": "^2.5.2",
    "webpack": "^3.12.0",
    "webpack-bundle-analyzer": "^3.3.2",
    "webpack-cli": "^3.3.10",
    "webpack-dev-server": "^3.1.14",
    "webpack-merge": "^4.1.0"
  },
  "engines": {
    "node": ">= 6.0.0",
    "npm": ">= 3.0.0"
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not ie <= 8"
  ]

webpack 核心团队表示 form version 3+ 兼容性将集中在 webpack 4

所以我认为你还需要将 webpack 3 更新到 webpack 4

此文档可能会帮助您实现这一目标 https://webpack.js.org/migrate/4

我同意你必须从 webpack 3 升级到 4,但具体来说,这些是我必须首先执行的步骤,因为 webpack-cli 已被拆分成一个单独的包:

$ npm install webpack webpack-cli --save-dev

如此处解释:https://webpack.js.org/guides/getting-started/#basic-setup

您可以尝试在 package.json

内的 npm 运行 脚本中将 webpack-dev-server 更改为 webpack serve

删除package-lock.json 文件。在 package.json.

中更改以下内容
"webpack": "^4.32.2",
"webpack-cli": "^3.3.0",
"webpack-dev-server": "^3.11.0"

运行 npm 安装

要修复它只需做两件事。

  1. 安装 npm i webpack-cli @webpack-cli/init
  2. 将此添加到您的 package.json:
    "scripts": {
      "start": "webpack-cli serve --mode development"
    },
    

完成!

是因为webpack-cli的版本问题。在某些版本中,没有 config-yargs.js 文件。所以 ^3.3.11 版本的 webpack-cli 对我有用。 试一试:

npm i webpack-cli@^3.3.11

出于某种原因,webpack 团队将命令更改为 webpack serve 更改您的 package.json:

"start": "webpack serve"

参考:https://github.com/webpack/webpack-dev-server/issues/2759

我使用的版本:

"webpack": "^5.10.0",
"webpack-cli": "^4.2.0",
"webpack-dev-server": "^3.11.0"
"scripts": {
    "start": "webpack serve --mode development",
    "build": "webpack --mode production"
  },

运行: npm run start or npm start now

在你的脚本中 package.json 使用 webpack serve 而不是 webpack-devserver

你必须检查以找出最新版本的 webpack、webpack-cli 和 webpack-dev-server,当你有这些信息时编辑 package.json 以反映这些版本和 运行 yarn安装 --check-files 然后你必须使用命令“npx webpack serve”启动 webpack-dev-server

package.json 文件中将 webpack-dev-server 更改为 webpack serve

例如:

"scripts": { "start": "webpack serve --mode development --open" },

它对我有用! ;-)