在React Native中,我们知道平面列表组件有一个名为"额外数据";。当额外的数据发生更改时,平面列表将被重新渲染。那么,我们如何知道平面列表是否完全重新渲染呢?例如:在重新渲染平面列表之前->显示加载->平面列表被完全重新呈现->关闭加载。
你可以使用React.memo,这里有一些你可以尝试的方法,但还有其他更好的方法,比如为什么要渲染和开发
(仅用于调试,但不要将其保留在代码中(
在文件的顶部,在您的主要组件之外:
const MemoizedFlatList = React.memo(FlatList,(prevProps, nextProps)=>{
const areEqual = prevProps === nextProps
if(!areEqual ){
console.log('Rerendered')
for (var key of Object.keys(prevProps)) {
if(prevProps[key] !== nextProps[key]){
console.log(key)
}
}
}
return areEqual
})
现在在组件中使用<MemoizedFlatList />
而不是<FlatList />
来调试