小程序的开发生态不断地在完善,从最开始的原生框架,到腾讯自己开发类vue规范的wepy,再到美团开发近vue写法的mpvue,再到最近O2实验室刚推出的遵循React规范的Taro。
- 频繁调用 setData及 setData过程中页面跳闪
- 组件化支持能力太弱(几乎没有)
- 不能使用 less、scss 等预编译器
- request 并发次数限制
- 只要熟悉vue或react即可快速上手,学习成本低
- 一套代码可在多端编译运行(微信,支付宝,h5,RN) 支付宝小程序暂不完善
- 组件化开发,完美解决组件隔离,组件嵌套,组件通信等问题
- 支持使用第三方 npm 资源
- 支持样式编译器: Scss/Less,模板编译器,代码编译器:Babel/Typescript
wepy | mpvue | taro | |
---|---|---|---|
语法规范 | 类Vue规范 | Vue规范 | React标准,支持JSX |
多端复用 | 微信、百度、支付宝 | 微信、百度、支付宝、字节跳动 | 微信、百度、支付宝、字节跳动 |
集中数据管理 | Redux/Mbox | Vuex | Redux/Mbox/Dva |
组件化 | 自定义组件规范 | Vue组件规范 | React组件规范 |
脚手架 | wepy-cli | vue-cli | taro-cli |
样式规范 | Less/Sass/Styus | Less/Sass/PostCss | Less/Sass/PostCss |
组件规范 | 小程序组件 | html标签+ 小程序组件 | x小程序组件 |
- 腾讯团队开源的一款类vue语法规范的小程序框架(2017 年 11 月份)
- 未对小程序API作二次封装,API依然使用微信原生的,框架与微信小程序是否新增API无关
Github :https://github.com/Tencent/wepy
官网:https://tencent.github.io/wepy
- 美团团队开源的一款使用 Vue.js 开发微信小程序的前端框架(2018年3月)
- 支持微信的所有原生组件和api,无限制。同时框架封装了自己的跨端API,使用方式类似
mpvue.request()
Github:https://github.com/Meituan-Dianping/mpvue
官网:http://mpvue.com
- 京东凹凸实验室开源的一款使用 React.js 开发微信小程序的前端框架(2018年4月)
- 支持微信的所有原生组件和api,无限制。同时框架封装了自己的跨端API,使用方式类似
Taro.request()
,支持Taro 代码与小程序代码混写,可通过混写的方式调用框架尚未封装的小程序新增API
GitHub: http://github.com/nervjs/taro
官网:http://taro.aotu.io/
GitHub: https://github.com/dcloudio/uni-app
官网:https://uniapp.dcloud.io/
- 如果使用微信原生开发,需要注意手动写优化代码来控制
setdata
- 如果你是
react
系,那就用taro
- 如果是
vue
系,那就用uni-app
或者wepy