作者:iplaycodex
仓库:github、codePen
博客:掘金、segmentfault、知乎、简书、博客园
公众号:FEZONE
分割我:iplaycodex@163.com
特地申明:原创不易,未经受权不得对此文章进行转载或剽窃,否则按侵权解决,如需转载或开明公众号白名单可分割我,尊重原创尊重知识产权从我做起
1. 前言
公司最近有个需要是把曾经存在的用微信原生开发的 微信小程序
转为 字节跳动小程序 (以下简称头条小程序)
. 因为给的开发工夫太短, 重写根本不可能. 遂 google
寻找能够不便疾速将 微信小程序
转为 头条小程序
的办法. 现将整个过程演绎总结如下, 不便没有做过的同学能够疾速上手, 也不便本人记录. 毕竟好忘性不如烂笔头~Orz…
2. 筹备工作
- 1. 申请字节跳动开发者账号
- 2. 申请头条小程序, 配置相干账号权限
- 3. 小程序类别如果为非凡类别, 确认是否须要相干资质
- 4. 配置相干域名, 留神: 必须为
https
- 5. 主体认证申请
- 6. 申请开明领取
- 7. 下载开发工具
3. 技术选型
3.1. 如何做?
<!–more–>
下面曾经说了, 从 0 开发是不可能的. 所以咱们须要一个工具能够把小程序的源码转为头条小程序的代码. 通过各方调研, 有以下三种工具.
3.2. taro? uniApp? wx2bat?
名称 | 个性 | 语法格调 | 官网 |
---|---|---|---|
taro | 京东出品, 一品种 react 的语法的小程序开发框架, 反对一套代码转为 微信小程序 ,H5 , 百度小程序 , 支付宝小程序 , 快利用 ,ReactNative , 字节跳动小程序 ,QQ 轻利用 . 能够看到性能还是很弱小的, 并且反对将 原生开发的微信小程序 转为 taro 小程序 |
react | https://taro.aotu.io/ |
uniApp | 也是声称一套代码打包为不同平台的货色, 是一品种 vue 语法的实现. 文档没有 taro 写得好, 目前社区也没有其余框架成熟. 理解不是很多, 这里就不在赘述了 |
vue | https://uniapp.dcloud.io/ |
wx2bat | 本人开发, 应用最简略的一个工具, 它次要做的事件: 将 wxml 后缀名改为 ttml , 将 wxss 后缀名改为 ttss , 将 wxml 中 wx: 改为 tt , 将 js 中 wx: 改为 tt: . 同时反对转为百度小程序, 支付宝小程序 |
各个平台的原生语法 | https://www.npmjs.com/package/wx2bat |
总结:
通过下面的剖析和总结, 咱们能够得出一个论断: 上述 3 种转换形式大略的实现思路如下所示:
taro
和uniApp
wx2bat
1. 能够看到应用
wx2bat
长处是比拟疾速不便, 省了中间层的代码. 而taro
和uniApp
则加了一层尽管比拟麻烦, 然而却能够反对更多的平台.2. 通过自己实际 (只试验了
taro
), 发现错误很多, 转换的代码编译后有漏文件的景象, 而且谬误频频, 不停的再解决 BUG. 思考到开发工夫不短缺, 遂思考应用wx2bat
来做转换.
实操下来发现老本较低, 有一些简略的语法不兼容, 略微修修改改我的项目就能够疾速的跑起来. 遂采纳 wx2bat
来解决此次需要
3.3. 转换后果
通过 wx2bat
咱们曾经能够不便疾速的将 微信小程序
转为 头条小程序
了. 一些批改的细节参见我的 github
或者 npm
或者 集体站
, 地址如下所示:
iplaycodex
3.4. 遇到的坑
尽管说头条小程序的 90% 的 api 和微信小程序是差不多的, 然而还是有一些差异性. 须要咱们进行手动批改. 现演绎总结如下所示:
- 微信小程序的
.wxs
后缀文件在头条小程序中不反对! - 下面曾经说了头条小程序
.wxs
文件不反对. 那天然.wxs
中申明的函数在模板中是不能应用的 头条小程序
不反对在{{插槽}}
中应用函数, 更别说过滤器这种货色了, 这一点特地坑!微信小程序
互跳的相干逻辑代码须要删除!(即 A 微信小程序关上 B 微信小程序)微信
,wechat
等微信的关键字要全副删掉, 否则可能会审核被拒- 获取用户数据的按钮上的
bindgetuserinfo
办法不反对, 须要改为一般的bindtap
- 受权登录这里和微信小程序差不多, 不须要过多的批改~
- 领取的话,
头条小程序
反对的比拟多, 例如支付宝
. 这里须要依据需要自行批改 - 如果你的我的项目中有搜寻框须要接入
敏感词
过滤!!!(咱们的我的项目因为这个审核被拒) - 对于用户输出非法揭示的
toast
不能自己随便写, 要写头条给的揭示文本, 例:因相干法律和要求,相干搜寻后果不予展现
- 等等 …
4. 总结
到这里我的项目应该曾经能够差不多跑起来了, 通过在转换后的 头条小程序
代码上修修改改进行二次开发, 能够很疾速的将 微信小程序
转为 头条小程序
. 接下来就是须要对整个我的项目进行回归测试了~ 这里就不再赘述了~
5. 参考文档
微信小程序官网文档
字节跳动小程序官网文档
wx2bat 文档
6. 结束语
❤️ 关注 + 点赞 + 珍藏 + 评论 + 转发 ❤️
原创不易,激励笔者创作更好的文章~