最近的web项目遇到了一个难点,热更新突然失效了!是突然失效了,应该是没改什么配置,毕竟我认为热更新是自带的。这个问题造成每次修改代码都需要刷新浏览器,非常麻烦。
这是报错内容:
```javascript
main.js:651 Uncaught TypeError: Cannot set properties of undefined (setting './node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/views/home/index.vue?vue&type=script&lang=js')
at webpackHotUpdateex_web (main.js:651:39)
at src_views_home_index_vue.82a2490c3a32f4c1.hot-update.js:10:70
![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/087574924996114.png "#left")
看到这个,我就只知道是热更新失效。网上给了好多种方案,都有那么一点点关系,但都不是解决方案。
1. 找不到这个模块,是因为文件大小写错误。这个就不可能,以前就是这么写的,没问题。
2.node_modules里的socket-client文件里少了什么代码,我找了,连这个文件都没有。
3.webpack的版本错误,我找了package.json,都没找到什么webpack的版本,而且我认为不是,项目老早就建立了,这是突然热更新就失效的。这里@vue/cli-service是5.0.0
4.还有的是加上hot:true,或者安装热更新插件等等
总之,都没办法解决
package.json里是这样的。
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"build:test": "vue-cli-service build --mode test",
"lint": "vue-cli-service lint"
},
"devDependencies": {
"@babel/core": "^7.12.16",
"@babel/eslint-parser": "^7.12.16",
"@babel/preset-env": "^7.22.4",
"@vue/cli-plugin-babel": "~5.0.0",
"@vue/cli-plugin-eslint": "~5.0.0",
"@vue/cli-plugin-router": "~5.0.0",
"@vue/cli-plugin-vuex": "~5.0.0",
"@vue/cli-service": "~5.0.0",
"babel-plugin-component": "^1.1.1",
"babel-plugin-transform-remove-console": "^6.9.4",
"babel-polyfill": "^6.26.0",
"compression-webpack-plugin": "^10.0.0",
"echarts": "^5.4.1",
"eslint": "^7.32.0",
"eslint-plugin-vue": "^8.0.3",
"js-cookie": "^3.0.1",
"postcss-pxtorem": "^5.1.1",
"sass": "^1.66.1",
"sass-loader": "^10.4.1",
"svg-sprite-loader": "^6.0.11",
"swiper": "^5.4.5",
"vue-i18n": "^8.27.0",
"vue-template-compiler": "^2.6.14"
},
```