Weex工程提供了在线预览功能
weex src/***.vue
,一直用得很顺手,
今日心情不错,找了间咖啡馆,点了杯咖啡,准备调试一波,执行时系统提示【更新】,下意识点了回撤,结果整个下午就泡汤了,就因为手欠导致了如下bug
Vue packages version mismatch
尝试
以上错误很常见,一般情况下,按照报错提示执行命令就可以解决,
log中提示,版本vue和vue-template-compiler的版本不匹配,
可以通过下方式自检根目录下package.json文件排查
- 如果你的vue-loader版本>=10.0,可以直接更新vue-template-compiler
$ npm update vue-template-compiler
- 如果你的vue-loader版本<10.0或者使用了vueify,需要重新安装vue-loader和vueify,然后更新vue-template-compiler到最新版本
$ npm install vue-loader&vueify --save-dev
$ npm update vue-template-compiler
依然报错?
按照以上指令重新安装了依赖包,发现依然有错,有以下几种方式排查
查看全部依赖包
$ npm list
查看是否有异常的包依赖
将【node_modules】文件删除重新安装
如果是依赖包安装匹配错误或依赖包被篡改导致的错误,此方法可以有效解决
重新安装全局环境
此方法为下下策,是在没有办法的情况下才执行
weex涉及的全局环境大概有以下几种
- node
- npm
- vue
- vue-cli(本人此次遇到的错误就是weex-cli更新导致执行环境依赖包和项目包不匹配造成的)
- weex
- weex-cli
- weexpack
【注意事项】以vue-cli为例
如果之前的全局环境时使用cnpm安装的,那么在重新安装时就不能仅仅使用$ npm uninstall卸载此包
$ npm uninstall vue-cli
而应该将响应环境包彻底删除或者将包内的node_modules全部删除
如:
$ sudo rm -rf /usr/local/lib/node_modules/vue-cli
# 或
$ sudo rm -rf /usr/local/lib/node_modules/vue-cli/node_modules
然后重新安装
$ npm install -g vue-cli
# 如果出现access权限错误,请使用sudo命令
$ sudo npm install -g vue-cli