Webpack5和DevServer

747 阅读1分钟

一个webpack5的项目配置如下:

"webpack": "^5.30.0",
"webpack-cli": "^4.6.0"

按以前的习惯,安装webpack-dev-server,然后配置脚本:

"scripts": {
    "dev": "webpack-dev-server --config=./webpack.config.dev"
}

而后报错:

> webpack-plugins@1.0.0 dev
> webpack-dev-server --config=./webpack.config.build

node:internal/modules/cjs/loader:927
  throw err;
  ^

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

百度搜的话,有些文章提到是webpack-cli的版本问题,webpack-dev-server要求cli的版本为webpack-cli@^3。但在webpack5的前提下,npm会阻止你安装低版本cli。这也是我之前的一系列脚手架和文章都一直停留在webpack4的原因。

npm看了下webpack-dev-server,3个月前更新了一次。

但是webpack5发布到现在小半年了,今天试了一下,还是这个问题。又改用google搜了一下,才知道是套路变了:github.com/webpack/web…

这个issue中有人说道:

Can you try webpack serve ?

就感觉很突然,又很熟悉。改了一下scripts.dev

"scripts": {
    "dev": "webpack serve --config=./webpack.config.dev"
}

本地服务顺利启动。

以上。