今天手賤升級了 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