美文网首页
Taro版本依赖问题

Taro版本依赖问题

作者: 狂菜飞 | 来源:发表于2020-02-26 17:44 被阅读0次

    Taro是一套遵循 React 语法规范的 多端开发 解决方案。利用它可以方便实现在微信、支付宝、百度等小程序以及H5与React-Native不同端的开发,即一套代码多端运行。更多介绍可参见其官方网站。

    但在使用Taro时有个很麻烦的问题,Taro的项目工程对Taro的版本要求比较严格,例如使用1.3.25版本开发的项目,就不能使用1.3.33的版本运行,即小版本都不能兼容。同时,Taro为了能够跟上各端的前进步伐,自己的版本更新也很快。这很容易导致一个现象,如果本地同时开发两个或多个Taro项目,但它们使用的Taro版本又不一致,每次运行一个项目可能就需要先重新安装一次Taro,而且多个项目不能同时运行。这……的确有些头痛。

    为了解决这个问题特意搜索一番,发现一个python的包可以利用:nodeenv。是的你没看错,就是python的,但它实现的是创建node的虚拟环境,与python虚拟环境很类似。

    首先要保证本地环境安装了python,mac及linux系统自带2.x版本的python,windows环境需要自己安装,关于python的话题在此不多说。下面我们介绍如何利用nodeenv解决Taro版本冲突问题。

    • 安装nodeenv
    $ sudo pip install nodeenv
    
    • 在当前路径下创建虚拟node环境
    $ nodeenv --node=system taro1.3.25
    

    --node=system表示利用当前系统中的node创建虚拟环境,即不独立安装node,且在虚拟环境下能访问到系统node安装的全局工具包。
    如果要安装完全独立的环境,可去掉该参数或把system改为具体的node版本号。由于我们只要是解决Taro问题,所以选择使用系统的node来创建。

    taro1.3.25是要创建的虚拟环境的文件夹名称

    • 启动虚拟环境
    $ . taro1.3.25/bin/activate
    

    启动后命令行提示符变成这样

    (taro1.3.25) $ 
    
    • 在虚拟环境下安装指定版本的Taro
    (taro1.3.25)  $ npm install -g @tarojs/cli@1.3.25
    

    注意,一定要用npm做全局安装,yarn不受虚拟环境影响会安装到系统全局

    安装完成后可查看版本

    (taro1.3.25) $ taro -V
    👽 Taro v1.3.25
    
    1.3.25
    

    查看taro的安装位置

    (taro1.3.25) $ which taro
    /xxxx/xxx/xxx/taro1.3.25/bin/taro
    
    • 然后,正常启动项目就可以了
    (taro1.3.25) $ yarn dev:weapp
    

    所有项目本地的操作使用yarn与npm都可以。

    • 退出虚拟环境
      在不需要虚拟环境时可直接执行如下命令
    (taro1.3.25) $ deactivate_node
    $ 
    

    更多使用方法参见https://pypi.org/project/nodeenv/

    相关文章

      网友评论

          本文标题:Taro版本依赖问题

          本文链接:https://www.haomeiwen.com/subject/udjbchtx.html