今天手贱升级了 vue/cli 升级后 (4.1.2),但是在用 vue UI 命令构建的时候,出现了以下错误提示。
Vue packages version mismatch:
- vue@2.6.10 (/usr/local/lib/node_modules/vue/dist/vue.runtime.common.js)
- vue-template-compiler@2.6.11 (/usr/local/lib/node_modules/@vue/cli/node_modules/vue-template-compiler/package.json)
This may cause things to work incorrectly. Make sure to use the same version for both.
If you are using vue-loader@>=10.0, simply update vue-template-compiler.
If you are using vue-loader@<10.0 or vueify, re-installing vue-loader/vueify should bump vue-template-compiler to the latest.
从上错误信息的理解意思是说,我的 vue 版本 和 vue-template-compiler 这个库的版本对不上。
第一次尝试:
我直接重新安装了 全局的 vue 库 但是安装后发现不管怎么安装 都是 2.6.10 这个版本,无法和 vue-template-compiler@2.6.11 的版本一致
第二次尝试:
紧接着我又把 vue/cli 卸载后又降低版本安装(3.0+),但是安装后执行还是报错,版本不一致,vue-template-compiler这个包的版本并没有因为vue/cli库的版本降低而降低。
第三次尝试:
我直接把 全局的 vue 卸载后,又把 全局的 vue/cli 卸载了,然后只全局安装 vue/cli ,然后 再执行 vue ui 命令,这次就对了。
我认为是不是应为 我全局有 vue 导致 vue/cli 使用的是全局的 vue 库,没有走自己本地的 vue 库依赖 导致版本不一致。
最总结果输出:
1. sudo npm uninstall vue -g
2. sudo npm uninstall vue-cli -g 或 sudo npm uninstall @vue/cli -g 保证清楚干净的话 都执行下
3. sudo npm install @vue/cli