您好,欢迎来电子发烧友网! ,新用户?[免费注册]

您的位置:电子发烧友网>源码下载>通讯/手机编程>

浅谈React Native 按需加载

大小:0.9 MB 人气: 2017-09-28 需要积分:1

  开发过React Native的同学,大体都对白屏界面有所了解。作为RN原生自带功能,基本上每个使用RN的业务都在优化这一阶段。通过对狼人杀的测试来看,首次从RN启动到渲染,耗时基本有1.7s左右。而这些耗时数据还是在iPhone6s中测试得出,可想低端局的情况可能会更加糟糕。

  分析性能

  浅谈React Native 按需加载

  工欲善其事必先利其器,要分析其耗时。还得从源头着手,根据常规做法,都会将React Native打包的js拆分成Base Bundle和业务Bundle。从上图,RN 加载流程来看,加载BaseBundle与业务Bundle的耗时是可以有优化空间的。

  浅谈React Native 按需加载

  优化的方案和大多数人的思路一样,只需在业务启动前预加载BaseBundle与业务Bundle即可达到优化时间的效果。

  目前所遇到的瓶颈

  浅谈React Native 按需加载

  浅谈React Native 按需加载

  在优化的开始,我们可能一直把精力放在BaseBundle中,认为BaseBundle是RN的公共库,体积肯定不小。但是从数据来看,我们的狼人杀业务Bundle已经是1.8MB(纯js代码,不包括资源文件)而BaseBundle只有918KB,已经是两倍的体量。现在还只是狼人杀业务的初期,随着业务的快速迭代,业务Bundle只会更快的增加。而过大的业务Bundle所导致的加载时间也会加长。

  可能有同学会说,这不是有预加载嘛。我承认,预加载确实解决了绝大部分业务Bundle的加载耗时。但是,并不是每次预加载都可以刚刚好预加载好业务Bundle。虽然业务Bundle加载耗时变长,预加载好的几率就会慢慢变低。

非常好我支持^.^

(0) 0%

不好我反对

(0) 0%

浅谈React Native 按需加载下载

相关电子资料下载

      发表评论

      用户评论
      评价:好评中评差评

      发表评论,获取积分! 请遵守相关规定!