微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ReactNative 遇见的坑

基于0.39,Android平台

1、ListView 吃内存,无法回收内存;

用Native 来自定义RN组件

目前需要完善:Type相同,布局不同情况下无法动态改变UI

2、navigator动画慢;

使用InteractionManager.runAfterInteractions 有所改善,但还是稍慢

3、循环动画会阻塞InteractionManager.runAfterInteractions的执行;

解决方案:

Animated.timing(this.state.animatedStartValue,{

tovalue: 1,

duration: 500,

delay: 1000,

isInteraction: false,//加入此参数可解决,官方文档上无此参数说明

}),

4、尽量使用shouldComponentUpdate控制刷新,显著提高性能

5、低版本使用flex布局,设置flex属性,高版本改成flexGrow,flexShirk等属性,若不会造成UI错乱;

6、debug版本经常崩溃,release版本无此问题,官方文档0.42上会修复此问题;

崩溃原因:

在debug版本时APP一直尝试连接本地代码,失败了就再次创建HttpClient去连接,直到OOM;

7、使用Modal时不要和系统的Dialog同时弹出,否则会崩溃,

崩溃原因:

Modal最终实现还是用Dialog,没有获得Token;

8、业务量过大时,bundle过大,加载稍慢,第一次加载把所有文件load进入内存(官方未出拆包方案),无法像HTML按需加载;

9、Text无法设置border;

10、打包过程中图片按照 图片文件目录+图片生成一个文件夹中

@2x的生成到xhdpi

@3x的生成到xxhdpi

为减小包大小可去掉@3x图片

11、横向ScrollView,若两tab高度不一致时,容易出现高度错乱;

12、RN升版本改动很大

13、错误日志打印不全,遇到崩溃难以跟踪到具体代码位置,难以调试;IOS稍好,Android太慢;

原文地址:https://www.jb51.cc/react/304634.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐