微信原生小程序转成其他小程序(百度/支付宝/字节跳动/QQ等)_坚果的个人博客-Nut

坚果的个人站

微信原生小程序转成其他小程序(百度/支付宝/字节跳动/QQ等) / Bug

3年前 阅读 / 3456 来源 / 原创 文 / 管理员

目前市场上各个大厂扎堆出小程序,所有小程序千篇一律,结构基本相同。但是最早的一批小程序都是从微信上开始起步的,现在根据市场的需求,要对其他端的小程序进行开发。这时候要是可以有可以将微信原生直接生成其他端小程序的工具,那么将是开发者一大福利。

       

       在网上看到了很多将微信转为其他端小程序的方法,基本上都是手动进行的,比如修改组件,修改授权方式,将wxml —> swan /wxss—> css ,保守的说,这些方法比较实用,出现问题很容易定位到,但是有一个缺点就是代码量大了以后会很难受,是纯正的力气活。但是往往程序猿们都比较懒,懒到身上不发霉不洗澡得地步。


       所以今天推荐的是凹凸实验室的Taro,再转得过程中可能会大量掉发,请做好准备。Taro是基于React书写规范,它采用与 React 一致的组件化思想,组件生命周期与 React 保持一致,同时支持使用 JSX 语法,让代码具有更丰富的表现力,使用Taro 进行开发可以获得和 React 一致的开发体验。官网介绍


        Taro 可以将你的原生微信小程序应用转换为 Taro 代码,进而你可以通过 taro build 的命令将 Taro 代码转换为对应平台(比如百度,支付宝,字节跳动)的代码,或者对转换后的 Taro 代码进行用 React 的方式进行二次开发,对其他平台再进行适配。


        微信原生小程序转 Taro 的操作非常简单,首先必须安装使用 npm i -g @tarojs/cli 安装 Taro 命令行工具,不了解具体安装方法,可以参考官网文档,其次在命令行中定位到小程序项目的根目录,根目录中运行:


$ taro convert

       

       即可完成转换。转换后的代码保存在根目录下的 taroConvert 文件夹下。你需要定位到 taroConvert 目录执行 npm install命令之后就可以使用 taro build 命令编译到对应平台的代码。


       拿支付宝小程序为例:

# yarn
$ yarn dev:alipay
$ yarn build:alipay

# npm script
$ npm run dev:alipay
$ npm run build:alipay

# 仅限全局安装
$ taro build --type alipay --watch
$ taro build --type alipay

# npx 用户也可以使用
$ npx taro build --type alipay --watch
$ npx taro build --type alipay

     

         一般情况下我们都会使用

$taro build --type alipay --watch

       具体其他可以见文档


        在转化的工程中注意几个关键点


        1.微信原生小程序不能报错,写法必须标准,避免变量数据类型转换(如 声明为数字,赋值字符串);

        2.确保微信转为Taro小程序,可以正常启动,引入其它插件确定是否在其他端小程序支持,不支持先进行解决。

        3.Taro转为其他小程序的时候,肯定或多或少的会出现报错,先了解要转的小程序的编写规范逻辑,是否有冲突,可以在Taro的基础上进行二次开发

        4.一般情况下,UI会正常显示,不会有太大问题,具体逻辑需要再次测试。解决不了就进入社区查询,或者提个issues;


        ps:建议开发者对要开发的小程序官方文档熟悉,对Reactjs的jsx语法及生命周期熟悉。


  


1

评论列表
共3条评论