zoukankan      html  css  js  c++  java
  • 记一个开发中遇到react-native flatList 的坑

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

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

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

    initialNumToRender

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

  • 相关阅读:
    本周总结
    本周总结
    第四周自我总结
    结对编程
    第四周自我总结
    第三周自我总结
    本周工作安排及内容
    知识思考
    交作业。。。
    MSF过程模型
  • 原文地址:https://www.cnblogs.com/ChrisZhou666/p/8432940.html
Copyright © 2011-2022 走看看