百度网盘小程序互转工具:wx2正式开源!

“ 2020年11月,百度网盘小程序互转工具WX2,正式开源!”

wx2是一个小程序的转换工具,它可以一键将原生的微信小程序转化成百度小程序。作为一种轻量级小程序跨宿主解决方案,wx2同时支持文件和组件维度的转换,提升小程序开发者开发效率,改善开发体验,降低小程序多宿主平台的研发成本。

随着业务发展,小程序在社交类用户生态中拥有良好的用户体验,且灵活轻量,因此正在被越来越多的场景落地。百度网盘挖掘业务创新点,进行小程序矩阵的业务场景探索,同期诞生多个宿主的场景类小程序,因此小程序互转工具wx2应运而生。

wx2的核心价值在于能够通过一份代码生成百度APP宿主小程序代码,针对多平台小程序的差异性,提供代码解析和转译能力,对微信小程序代码进行转换及抹平。编译后的产出无代码侵入,且可读可写,同时支持用户二次迭代开发(互转工具仅支持对微信原生小程序转换,不支持对框架开发的小程序转换)。

wx2在自定义组件的支持上也足够完善,包括对relations、selectComponent的支持。互转工具的原理是在于匹配各个小程序的diff,通过固定的规则去对文件进行转换;程序执行的方式相对于人工修改来说,覆盖率和正确率都会高很多。 

wx2以文件为转换单位,它不仅支持整个微信小程序的转换,同时也支持部分微信小程序文件的转换。对于微信小程序中一些系统独有的API能力无法等价转换,wx2也进行了公共降级提示,用户也可以在转换后手动进行逻辑处理,具体文档可参见:

https://pan.baidu.com/union/wx2/home#/ 

更确切的说,wx2的定位是一个静态编译型工具,准确的说是源码到源码的一个转换器,而不是一个框架。  

  • 提升小程序迭代的整体开发效率90%+,单个小程序开发时间缩短80%

  • 小程序测试覆盖率达到90%+,有效降低小程序bug率

  • 接入成本低,提供详细转换日志方便排查

wx2可以通过以下两种方式安装使用:

方式1通过npm安装,命令行执行wx2

安装:npm install wx2 -g

使用:wx2  当前的微信小程序文件夹 待生成的百度小程序文件夹 -t

详细安装方法请参见GitHub的README文档中的快速开始。

方式2:通过百度开发者工具中的搬家功能直接转换

1)、如图,进入搬家工具,在开发者工具中点击“搬家”:

https://smartprogram.baidu.com/docs/develop/tutorial/move/

2)、进入搬家工具后,填入项目名称、微信小程序目录,appId,以及要生成的百度小程序目录,最后点击开始转换

wx2目前主要完成了对微信小程序转百度小程序的支持,后续将会完成对转换其他主流小程序的完善,接下来我们将会侧重于工具的转换性能以及稳定性,为更多微信小程序开发者一键迁移到百度小程序贡献一份力量,并为小程序生态建设做出更大的贡献。

1)、项目开源地址

【Github地址】:

https://github.com/baidu/wx2

【Gitee地址】:

https://gitee.com/baidu/wx2

如果您有任何意见或问题都可以提issue到Github或Gitee,我们将及时为您解答。

如在使用中遇到问题,快速沟通,可微信扫描二维码,加入wx2技术交流群,添加下列管理员微信,并备注“wx2”,管理员邀您入群: