事情来源是这样的,前段时间用umi做小程序跨平台开发发现比较麻烦,运行效率也没原生优秀。然后准备自己搞一个。
先说下问题,免得后面啰嗦。怀疑头条家的跟 qq小程序都扒拉了微信小程序源码,抛开一致的api不说,改动的东西,可能只有 `wx.` ,`wx:` 和文件命名, 甚至 `*.wxss` 样式文件在头条,qq小程序不需要改都可以直接用...
(ps:说实话,这改的确实有点不走心...)
然后,分享下通过微信小程序转化 qq小程序和 头条小程序流程(百度申请还没下来).
- 如果需要用 async/await 等es7+语法,建议使用ts 开发脚本,写法上基本上没有太大改动.
- 关于头条和qq小程序的转化,如果不使用一些特定api,可以直接将项目内的 `wx.*` 和`wx:*` 替换为 `tt*` 或`qq*` ,然后将文件名后缀 从`.wxml`,`.wxss`改为 `.*ml` `.*ss` 即可。
- qq小程序理论上跟微信小程序接口支持上是一致的,转头条系小程序的话,需要注意上传时的接口可用性检测.
- 头条小程序提审一定要确认代码完成后再提审,头条不支持撤回审核或者覆盖审核.
然后是,推荐大家如果精力允许的情况下,还是将web端跟小程序分别开发。两个原因:
- web端的一些api,样式处理,还有比如vue的结构(前段时间尝试了下uni-app),这些跟小程序上还是存在一定差异的.
- 各厂的小程序本质上都差不多,这一块倒是可以打通下,一套源码开发即可.
如果条件允许的话,我比较建议,通过小程序转web方案更加合理一些,web转小程序的话有一定的性能下降还有代码体积的限制,然后就是小程序本身封装程度比web就高一些,小程序可以用的东西,web端都可以用。反之兼容性就没那么好了. 微信的 kbone 框架还没尝试过,希望尝试过的活计分享下。
最后, 做的这个实时编译各厂的小程序的框架,新鲜出炉的还不完善,如果大家感兴趣的话,可以私聊我要下。
其实 头条的 你用 wx.request 也可以发请求的。微信、QQ是两个事业部,代码用wx.xxx开头的也可以跑。应该是方便开发者减少切换成本(也可能是代码直接捞过去用的)。