Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.0k views
in Technique[技术] by (71.8m points)

browserslist 导致 webpack-dev-server 的自动刷新失效

只要在根目录有 .browserslistrc 文件(即使这个文件是空的),或者在 package.json 里面配置了 browserslist 字段,webpack-dev-server 在 vscode 里面编译成功,但是在浏览器没法看到更新,一般如果正常启动的话会在浏览器的 console 里面看到下面三行

[HMR] Waiting for update signal from WDS... index.js:48 
[WDS] Hot Module Replacement enabled.
[WDS] Live Reloading enabled.

如果配置了 browerslist 则只有第一行,并且也无法自动更新,必须手动刷新浏览器才能看到更新。

把 .browserslistrc 和 package.json 里面的 browserslist 都删了就一切正常。我的 webpack 版本如下

"webpack": "^5.4.0",
"webpack-cli": "^4.2.0",
"webpack-dev-server": "^3.11.0",

希望有大神指导一下。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

已经在 webpack-dev-server 的 issue 中找到答案了,目前这个 bug 还没修复,暂时只能通过设置 target 字段来解决。

target: process.env.NODE_ENV === 'development' ? 'web' : 'browserslist'

webpack-dev-server-issue


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...