问题:

根据Taro官方文档,taro脚手架(@tarojs/cli)的版本要与所使用的 taro 版本保持一致,否则会导致出错。具体情况见下图。
image.png
实际情况是,我们在开发时,taro脚手架经常是全局安装的。

  1. npm install -g @tarojs/cli@版本号

这样,当同一台电脑上有多个版本的 taro 项目(1.x 的项目,2.x 的项目,3.x 的项目)时,那么始终只有一个与全局 @tarojs/cli 版本保持一致的项目能正常运行,其他与全局taro脚手架版本不一致的项目将都不能正常编译运

解决办法:

在每个项目局部安装对应版本的 taro 脚手架。

  1. npm install -dev @tarojs/cli@版本号

结论:

脚手架使用规则:

npm 优先查询项目是否存在局部 @tarojs/cli 脚手架,不存在,才会查找是否存在全局 @tarojs/cli 脚手架,因此局部脚手架优先级更高。