如果是新初始化的项目,应该是不会存在这个问题。旧项目还是可能存在的,像我就遇到了。
在执行 npm run dev:mp-weixin 的时候,会遇到
Error: Cannot find module '@dcloudio/vue-cli-plugin-uni/packages/@vue/component-compiler-utils'
原因是 package.json 里面的依赖描述导致的
...
"@dcloudio/uni-cli-shared": "^0.2.994",
"@dcloudio/uni-template-compiler": "^0.9.183",
"@dcloudio/vue-cli-plugin-hbuilderx": "latest",
"@dcloudio/vue-cli-plugin-uni": "^0.9.516"
...
当我们重新 npm install 的时候,@dcloudio/vue-cli-plugin-hbuilderx 会被更新到最新版(2.x),而 @dcloudio/vue-cli-plugin-uni 却是旧版的,里面没有包含 @vue/component-compiler-utils ,所以才报错
解决办法:
方法1:全部更新 dcloudio 的所有依赖,个人感觉不太保险
方法2:看看 package-lock.json 里面一开始安装的 @dcloudio/vue-cli-plugin-hbuilderx 是什么版本的,手动锁死。比如我项目一开始 @dcloudio/vue-cli-plugin-hbuilderx 的版本是 1.0.137,则我通过执行 npm install @dcloudio/vue-cli-plugin-hbuilderx@1.0.137 --save-dev 来修复
2 个回复
DCloud_uniCloud_WYQ
测试未复现,可以查看是不是有依赖没有正确安装
木卯无尘
如果是新初始化的项目,应该是不会存在这个问题。旧项目还是可能存在的,像我就遇到了。
在执行
npm run dev:mp-weixin的时候,会遇到原因是 package.json 里面的依赖描述导致的
当我们重新
npm install的时候,@dcloudio/vue-cli-plugin-hbuilderx会被更新到最新版(2.x),而@dcloudio/vue-cli-plugin-uni却是旧版的,里面没有包含@vue/component-compiler-utils,所以才报错解决办法:
方法1:全部更新 dcloudio 的所有依赖,个人感觉不太保险
方法2:看看
package-lock.json里面一开始安装的@dcloudio/vue-cli-plugin-hbuilderx是什么版本的,手动锁死。比如我项目一开始@dcloudio/vue-cli-plugin-hbuilderx的版本是1.0.137,则我通过执行npm install @dcloudio/vue-cli-plugin-hbuilderx@1.0.137 --save-dev来修复