前言
工作中接到开发混合app的需求,以前没有接触过,做了一段时间调研,也写个几个项目,就过程中遇到的问题,谈谈想法。
调研阶段
经过一阵google搜索,大致了解了几种方案,按照类别可以分成以下几类:
类别
代表
native APP
react-native(jsx)、weex(vue)
hybrid APP
dcloud(mui、5+SDK)、ionic(angular、cordova)、webview加载SPA应用
web APP
浏览器加载SPA应用
注:并未考虑原生 APP。
各种方案的优缺点,网上有很多详细的文章,这里就不一一叙述了,大家可自行搜索。
实践阶段
1. React-Native
接下来就是一个一个的尝试,最早接触过React-Native开发,就先说说它。
React-Native提供了常用的组件,JSX语法,生态圈也比较繁荣,有很多插件。
坑也比较多:
前期对windows平台以及android平台支持不太友好,在此平台上搭建环境简直想哭,建议mac;
list组件存在性能问题,初入门的面对一大堆英文文档研究性能问题,还是有一点点勉强的;
打包要兼顾ios和android,需要一定的原生基础,但不多;
键盘遮挡问题;
navigator不是太好用;