因項目需求封装了一个 View 作为 react native  flatList 的 item, 在原生 View 有方法响应需要传递到到 RN, 然后出现一个闪退问题: 在滑到最后在滑回来, 滑到第一张 有时候是第二张的时候, 单击(原生 View 的单击手势)的时候就会闪退, 同样的在 item 的数量多的时候都会出现这个问题, item 少的则不会.

后来在调试的时候发现原生的 View 为 nil, 于是想到可能是该 flatList 的 item 被回收了,  那怎么解决呢/

看了下 flatList 的属性, 他其实也是根据原生视图封装的, 虽然不懂他的机制 , 但肯定是存在复用机制的, 正好有一个属性

initialNumToRender

他本来的目的是渲染一开始的元素个数, 用来在最短的时间把内容呈现给用户, 但是后面的介绍很有意识, 在滑动的时候不会卸载这些一开始渲染的 item, 也就是说这些 item 从一开始渲染就不会被销毁, 那么我的原生 View 就不会变为 nil, 所以闪退就解决了

转载于:https://www.cnblogs.com/ChrisZhou666/p/8432940.html

记一个开发中遇到react-native flatList 的坑相关推荐

  1. android开发rn插件,在Android原生应用中嵌入React Native

    开发工具:Android Studio , WebStorm 参考链接:React Native官方中文文档 一.创建React Native项目 1.在本地React Native项目目录下,创建一 ...

  2. 如何构建具有实时搜索功能的React Native FlatList

    by Vikrant Negi 通过Vikrant Negi 如何构建具有实时搜索功能的React Native FlatList (How to build a React Native FlatL ...

  3. 移动端跨平台开发Flutter 与 React Native对比

    移动端跨平台开发Flutter 与 React Native 深入对比分析 2019年6月21日20:41:35 发表评论 154 views 移动端跨平台在经历数年沉浮之后,如今还能在舞台聚光灯下雀 ...

  4. 手机app开发可选技术——React Native

    百度百科 React Native是Facebook于2015年开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架React在原生移动应用平台的衍生产物,支持IOS和安卓两大平台.RN ...

  5. 4、在已有的Android应用中使用React Native

    这一篇记录的是如何在已有的Android应用中使用React Native,在官方的文档上也有介绍:http://reactnative.cn/docs/embedded-app-android.ht ...

  6. linux平台安装React Native遇到的坑

    3年前我在windows平台安装过React Native,我一直都记忆犹新,那个时候facebook刚推出支持安卓,然后花了一天的时间在自己的window电脑上配置好了,还是很兴奋的,安装博客地址如 ...

  7. React Native FlatList优化

    众所周知React Native刷新控件一般都是采用setState,对于FlatList来说就要想办法减少item的渲染,采用shouldComponentUpdate自己定义什么情况下执行刷新,有 ...

  8. 如何快速对接一个开发中的项目

    工作 上周项目组新来了几位技术大佬,过来负责带领我们做项目的重构.升级.完善等工作,在与我们这些菜鸟对接时候,主要关注了: 项目的各方面信息,通过项目组成员叙述.需求文档.汇报PPT.项目源代码.部署 ...

  9. React Native 入门踩坑

    开发环境搭建及环境变量配置 开发rn第一步需要配置安卓环境 android studio下载地址: https://developer.android.google.cn/studio/archive ...

最新文章

  1. leetcode算法题--完美数
  2. [New Portal]Windows Azure Virtual Machine (5) 配置VM的Endpoints
  3. CMap在用CString做key类型时,ARG_KEY要选LPCTSTR
  4. SAP Commerce Cloud 产品明细页面设计概述
  5. java泛型程序设计——翻译泛型表达式+翻译泛型方法
  6. html5 web storage攻击,HTML5安全风险详析之二:Web Storage攻击
  7. redis——对项目的一些优化方案
  8. 【操作系统复习】进程控制
  9. Leetcode--94. 二叉树的中序遍历(迭代递归)
  10. 互联网架构设计漫谈 (2)
  11. 阿里云自研数据仓库 AnalyticDB 再捧 TPC 全球冠军
  12. ASP.NET输入文本框自动提示功能
  13. css 绝对定位底部居中,css – 在另一个元素的中心下方水平居中绝对定位元素
  14. 苹果手机java设置_苹果java文件怎么打开?苹果手机安装JAVA程序的方法
  15. win10 IDE改AHCI,无需重装系统
  16. Python爬虫之xlml解析库
  17. 【BZOJ 3894】 文理分科
  18. [文献阅读]——BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
  19. GeoLite2 City库的基本使用与下载, 通过ip查询地址
  20. vscode配置matlab工作环境

热门文章

  1. IDEA中maven的命令及作用
  2. 2022-2028年全球与中国闪光棉市场研究及前瞻分析报告
  3. 2022-2028年全球与中国生物质燃料粒行业市场智研瞻分析报告
  4. 2021-2027年中国医疗护理行业深度研究及发展趋势报告
  5. docker安装Mysql5.7以及远程登陆链接配置
  6. PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 call
  7. 2002年3月英伟达发布核弹GPU与大算力自动驾驶芯片
  8. Camera ISP技术
  9. TVM apps extension示例扩展库
  10. 边端云处理器系列技术参数