react native 踩坑之 SectionList state更新 不执行render重新渲染页面
Posted intinity
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react native 踩坑之 SectionList state更新 不执行render重新渲染页面相关的知识,希望对你有一定的参考价值。
官方文档中指出
SectionList
- 本组件继承自
PureComponent
而非通常的Component
,这意味着如果其props
在浅比较
中是相等的,则不会重新渲染。所以请先检查你的renderItem
函数所依赖的props
数据(包括data
属性以及可能用到的父组件的state),如果是一个引用类型(Object或者数组都是引用类型),则需要先修改其引用地址(比如先复制到一个新的Object或者数组中),然后再修改其值,否则界面很可能不会刷新。(译注:这一段不了解的朋友建议先学习下js中的基本类型和引用类型。)
问题代码
class UserList extends PureComponent
<Props,State>{
……
}
修改后成功代码
class UserList extends Component <Props,State>{
…
}
虽然官方文档我并没有看懂….
以上是关于react native 踩坑之 SectionList state更新 不执行render重新渲染页面的主要内容,如果未能解决你的问题,请参考以下文章