ReactNative开发环境搭建
[TOC]
概述
文章参考:https://cloud.tencent.com/developer/article/1005415
本文主要介绍react-native通用化建设以及对react-native项目进行性能优化的方案,总体来讲主要围绕以下几个方面展开:
- React Native通用化建设
- React Native bundle本地分包
- React Native项目线上性能分析
- React Native项目首屏加速和性能优化
React Native通用化建设
React Native通用化建设主要做了一下几个方面的事情:
react-native线上离线包优化机制
为了实现React-Native线上项目react-native版本与h5版本的自由切换,同时合理地管理好不同项目不同版本的react-native离线包与h5离线包,我们的方案是将h5离线包和react-native bundle文件打在同一个离线包中(放在同一个bid号的离线包中)。
若后台url地址下发中携带md=rn字段,同时离线包中可以检测到react-native bundle文件并且app版本号符合react-native离线包中所配置的离线包生效所要求的app版本范围,则优先加载项目react-native版本。若不满足上诉几点要求,我们则优先加载react-native bundle本地文件或直接走项目h5线上资源。
从这张图中我们可以看出,RN加载速度最大的瓶颈其实在于图中绿色的区块JS init+Require,这块时间也就是JSBundle的执行时间;同时若多个项目同时上线,多个业务却不共用基础模块,jsbundle文件会越来越大,app的离线包文件负荷也会越来越大。
基于以上提出的两个问题,我们的解决方案是:react-native bundle本地分包策略
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 麦溪·在路上!
评论
ValineDisqus