最近拿到一个Demo,taro-cli版本是1.3.4。当时是萌新,没有注意版本的问题,在使用npm安装taro时直接装的是最新版3.0.2。
在3.0.2中,app的config,就是页面路由那块必须要和app.js独立出来,形成app.config.js,否则build时会报错app.config找不到,导致无法编译。
而在3.x版本之前,app的config是写在app.js中的,导致我那个demo没法编译。
后来查阅资料后,发现是版本的问题,然后我把demo的app.js里config部分的代码独立出来,新建了app.config.js文件,使用3.0.2进行build,结果还是有各种各样的错,查阅一些资料后仍无法解决。
后来在一次拉shi的过程中,才反应过来,查看demo的package.json后,得知了taro-cli的版本,我应该直接降低taro的版本才对啊。
所以马上用npm重新安装了1.3.4的taro,app.config还是合并到app.js中。终于编译通过了,仔细想来高版本的taro无法编译低版本的taro项目,可能还是部分插件、依赖啥的已经不兼容了。
查看taro在github上的更新日志,1.3.4版本好像发布于2019年1月,现在是2020年11月,接近两年时间taro已经更新了n多个版本甚至已经更新了两个大版本。而我们做一个项目可能就要一年两年,所以taro更新速度太快了我们这些头秃程序猿跟不上节奏啊。
最后吐槽一下3.x版本必须要独立app.config.js这点。你们就不能设计了向下再多兼容一下吗?如果项目中有独立的app.config.js文件,你们就以它为准,否则就去app.js里找一下有没有配置config项,有的话就以app.js里的config为准,这样不香吗?
在3.0.2中,app的config,就是页面路由那块必须要和app.js独立出来,形成app.config.js,否则build时会报错app.config找不到,导致无法编译。
而在3.x版本之前,app的config是写在app.js中的,导致我那个demo没法编译。
后来查阅资料后,发现是版本的问题,然后我把demo的app.js里config部分的代码独立出来,新建了app.config.js文件,使用3.0.2进行build,结果还是有各种各样的错,查阅一些资料后仍无法解决。
后来在一次拉shi的过程中,才反应过来,查看demo的package.json后,得知了taro-cli的版本,我应该直接降低taro的版本才对啊。
所以马上用npm重新安装了1.3.4的taro,app.config还是合并到app.js中。终于编译通过了,仔细想来高版本的taro无法编译低版本的taro项目,可能还是部分插件、依赖啥的已经不兼容了。
查看taro在github上的更新日志,1.3.4版本好像发布于2019年1月,现在是2020年11月,接近两年时间taro已经更新了n多个版本甚至已经更新了两个大版本。而我们做一个项目可能就要一年两年,所以taro更新速度太快了我们这些头秃程序猿跟不上节奏啊。
最后吐槽一下3.x版本必须要独立app.config.js这点。你们就不能设计了向下再多兼容一下吗?如果项目中有独立的app.config.js文件,你们就以它为准,否则就去app.js里找一下有没有配置config项,有的话就以app.js里的config为准,这样不香吗?