记一个开发中遇到react-native flatList 的坑
因項(xiàng)目需求封裝了一個(gè) View 作為 react native ?flatList 的 item, 在原生 View 有方法響應(yīng)需要傳遞到到 RN, 然后出現(xiàn)一個(gè)閃退問(wèn)題: 在滑到最后在滑回來(lái), 滑到第一張 有時(shí)候是第二張的時(shí)候, 單擊(原生 View 的單擊手勢(shì))的時(shí)候就會(huì)閃退, 同樣的在 item 的數(shù)量多的時(shí)候都會(huì)出現(xiàn)這個(gè)問(wèn)題, item 少的則不會(huì).
后來(lái)在調(diào)試的時(shí)候發(fā)現(xiàn)原生的 View 為 nil, 于是想到可能是該 flatList 的 item 被回收了, ?那怎么解決呢/
看了下 flatList 的屬性, 他其實(shí)也是根據(jù)原生視圖封裝的, 雖然不懂他的機(jī)制 , 但肯定是存在復(fù)用機(jī)制的, 正好有一個(gè)屬性
initialNumToRender
他本來(lái)的目的是渲染一開(kāi)始的元素個(gè)數(shù), 用來(lái)在最短的時(shí)間把內(nèi)容呈現(xiàn)給用戶, 但是后面的介紹很有意識(shí), 在滑動(dòng)的時(shí)候不會(huì)卸載這些一開(kāi)始渲染的 item, 也就是說(shuō)這些 item 從一開(kāi)始渲染就不會(huì)被銷毀, 那么我的原生 View 就不會(huì)變?yōu)?nil, 所以閃退就解決了
?
轉(zhuǎn)載于:https://www.cnblogs.com/ChrisZhou666/p/8432940.html
總結(jié)
以上是生活随笔為你收集整理的记一个开发中遇到react-native flatList 的坑的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 微信小程序----map组件实现(获取定
- 下一篇: 轻量级分布式 RPC 框架