
经历过独立开发者、第三方开发服务商、支付服务商、广告服务商、腾讯云服务商申请注册及在上面的一系统产品开发对接流程,创建了企业展示版、电商版等各种版本的小程序版本经历,站在小程序原生开发和三方开发框架来回有选择使用经历的角度上,在框架选择上得出一个结论:
小程序开发完全用框架是不可能的,因为框架开发将原生开发的一些功能给限制了,原生就是最好的一套框架,将开发者自己的开发思想融入到原生,在原生基础进行改进对我来说是最好的一种开发思路
微信小程序上手成本低,开发成本低,流量红利,推广成本低等等,很多公司的创业项目都会首选小程序来试水,小程序开发太火爆了,苦逼了前端工程师,又得学习新技术...学习让我快乐
半年时间,我已经开发了四个小程序,其中三个微信小程序,一个支付宝小程序。原生开发过,框架也用过。到底最优雅的开发模式是什么呢,聊聊,聊聊。
技术方案
目前开发微信小程序时,可选的技术方案大概有若干种,分别是:
- 微信小程序原生开发
- 使用wepy框架
- 使用mpvue框架
- 使用taro框架
- 其他框架
使用框架来开发,总结起来就干了一件事——加糖,但这糖好不好呢,不好说。
框架开发的初(li)衷(xiang)
- 快速迭代
- 减少开发成本
- 跨平台共享
- 提升开发体验
框架开发的挑(xian)战(shi)
- 必须同时熟悉微信小程序文档和第三方框架文档,给工程师提出了更大的挑战
- 框架的不完美,只是阉割版或者修改版的前端框架,并没有100%支持框架自身特性
- 框架构建与微信小程序之上,反而导致部分原生支持的特性作废,比如原生组件,模块化等
- 框架生态不健全,文档及相关资源匮乏
- 微信小程序自身处于快速迭代的状态,特性并不稳定,不像web一样有统一的标准
理想很美好,现实很残酷
wepy框架来说,组件化的支持不成熟,在实际的开发过程中,如果组件嵌套超过两层,面对某些特殊业务场景,翻车几率很高。组件的列表渲染,不支持在 repeat 的组件中去使用 props, computed, watch 等等特性。
mpvue框架是基于Vue.js的核心,属于修改版的vue框架,用起来和web端的vue也有些差异。美团小程序框架--mpvue入坑指南
我的想法
使用第三方框架开发,可以享受框架带来的开发便利,但对于小程序新增的诸多特性和功能,比如WXS模块、自定义组件和插件等,受制于第三方框架,无法使用。