前言
昨天還能跑的的項目,今天就歇菜了
第一步 刪除大法
依賴問題,那就把.lock/ node_modules 刪除重新裝
第二步 如果重裝不好使,那就各種降低版本嘗試
遇到這樣的
有兩種方式
1、npm i --force / npm i --legacy-per-deps
2、一開始我用了第一種!但是有各種問題出現了,辛酸史
npm 7 校驗更加嚴格了,老項目總有一些插件不維護更新的
所以直接換成 npm6
npx -p npm@6 npm install --legacy-peer-deps
(如果到這一步 npm run serve 還是報錯,比如我的)Error: Cannot find module 'webpack/lib/ModuleFilenameHelpers'
說明包沒有裝全,webpack都沒有! 再來一遍刪除大法,重新裝
第三步 包也裝好了,但還是不行,比如又有這樣的錯誤
TypeError: this.getOptions is not a function
1、可能是less/sass等版本高了,然後做降級處理
less 8以上的版本有大更新,所以可以降級到 7.x 或者5.x
第四步 這些解決完可能還有問題
in ./src/components/NumberInfo/NumberInfo.vue?vue&type=style&index=0&id=4370c5af&lang=less&scoped=true
Syntax Error: TypeError: Cannot set properties of undefined (setting 'parent')
@ ./node_modules/vue-style-loader??ref--10-oneOf-1-0!./node_modules/css-loader??ref--10-oneOf-1-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--10-oneOf-1-2!./node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??
ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/NumberInfo/NumberInfo.vue?vue&type=style&index=0&id=4370c5af&lang=less&scoped=true 4:14-482 15:3-20:5 16:22-490
@ ./src/components/NumberInfo/NumberInfo.vue?vue&type=style&index=0&id=4370c5af&lang=less&scoped=true
@ ./src/components/NumberInfo/NumberInfo.vue
@ ./src/components/NumberInfo/index.js
@ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Home.vue?vue&type=script&lang=js
@ ./src/views/Home.vue?vue&type=script&lang=js
@ ./src/views/Home.vue
@ ./src/config/router.config.js
@ ./src/router/index.js
@ ./src/main.js
@ multi (webpack)-dev-server/client?http://192.168.3.12:3000/sockjs-node (webpack)/hot/dev-server.js ./src/main.js
解決方案是找到對應的文件,將 scoped 去掉
原因是 antd在在變量的時候 沒找到
總結
node 依賴問題就是刪除了重裝,降級這些操作