如果是新初始化的项目,应该是不会存在这个问题。旧项目还是可能存在的,像我就遇到了。
在执行 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
来修复