随着小程序的火热推出,现如今多端统一开发框架层出不穷;
今天给大家简单的讲解一下,Taro,kbone,uni-app三个框架的横评;
Taro
京东凹凸实验室出品,官网地址:Taro | 多端统一开发解决方案
多端框架,发布到各个端均可,均将常用接口及组件封装了成了跨端API和跨端组件,组件规范沿用微信小程序的规范,部分平台特有API;
支持与小程序代码混写,可通过混写的方式调用框架尚未封装的小程序新增API;
uni-app
DCloud出品,官网地址:https://uniapp.dcloud.net.cn
多端框架,发布到各个端均可,均将常用接口及组件封装了成了跨端API和跨端组件,组件规范沿用微信小程序的规范,部分平台特有API;
支持条件编译,可在条件编译代码块中,随意调用各个平台新增的API及组件;
kbone
腾讯微信团队出品,官网地址:kbone 是什么? | wechat-miniprogram / kbone
沿用web的开发习惯,使用html标签及js api;涉及微信特有api时,可通过process.env.isMiniprogram判断环境,然后编写微信原生代码。对于html中没有标签可替代的微信内置组件(如swiper),需要使用 wx-component 标签或者使用 wx- 前缀,这样的内置组件会被包裹一层自定义组件,带来相应的性能开销。
微信小程序框架支持能力比对:
框架 | Taro | uni-app | kbone |
微信自定义组件 | √ | √ | √ |
三方插件 | √ | √ | × |
分包加载 | √ | √ | √ |
sitemap | √ | √ | √ |
wxs | × | √ | × |
云开发 | √ | √ | √ |
综上比对:微信原生 uni-app > taro > kbone
跨端支持
这三个框架都是为了解决平台同构问题,跨端的比较是必需的。
taro 和 uni-app 相对比较成熟,支持主流的所有平台。kbone 只支持微信小程序和 Web 端。
总结
- 如果你熟悉React,不懂Vue.js,推荐Taro;
- 如果你熟悉Vue.js,则推荐 uni-app;
- 如果你已经有H5代码,只想增加微信小程序平台,并且对性能要求不高,可以考虑kbone;
- 如果你的业务涉及多端,更推荐 uni-app;
- 如果你希望通过 serverless 方案快速上线业务,推荐 uni-app。