如何解决如何禁用nuxt.js的浏览器热模块重载?
我有一个使用webpack的nuxt项目。
我运行npm run dev
,这会启动一个侦听localhost:3000
的开发服务器。
然后,我使用反向代理(nginx)通过本地域名为该应用提供服务(例如,我可以使用dashboard.com/
在浏览器中访问该应用,该应用会将请求转发到localhost:3000
)。
浏览我的应用程序时,有时可能需要40秒钟才能获得响应。 当我检查Nginx日志时,到/__webpack_hmr/client
的路径有问题。
- 为什么此页面有时需要40秒才能加载(并非总是,但非常频繁)?
- 我该如何解决/禁用它?
我不需要重新加载模块,因为我希望点击F5
来立即刷新页面,而不必等待40秒来刷新页面。
这是我的package.json
{
"name": "----","version": "1.0.0","description": "----","author": "----","private": true,"scripts": {
"dev": "nuxt --no-hot ","build": "nuxt build","start": "nuxt start","generate": "nuxt generate"
},"dependencies": {
"@nuxtjs/axios": "^5.3.6","@nuxtjs/dotenv": "^1.4.0","@nuxtjs/pwa": "^3.0.0-0","debounce": "^1.2.0","nuxt": "^2.0.0"
},"devDependencies": {
"pug": "^2.0.4","pug-loader": "^2.4.0","pug-plain-loader": "^1.0.0"
}
}
这是我的nginx
server {
listen 80;
server_name dashboard.com;
location / {
proxy_pass http://localhost:3000;
}
}
解决方法
在发布nuxt的reddit和discord之后,nuxt的核心开发人员之一在github中提供了以下解决方案。
在nuxt.config.js
文件中,从webpack的插件中删除HotModuleReplacementPlugin
:
export default {
...
build: {
extend(config) {
const hmrIndex = config.plugins.findIndex(p => p.constructor.name === 'HotModuleReplacementPlugin')
config.plugins.splice(hmrIndex,1)
}
}
...
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。