Flatlist 不会在状态更改时重新渲染

Flatlist not rerendering on state change

我有一个 FlatList,当状态发生变化时它不会重新渲染。如何让 FlatList 重新呈现?

 _renderItem = ({item}) => {
    if(item=='null'){
      return <Text>Item is null</Text>
    }else{
      return <Text>Item is not null</Text>
    }    
};

render(){
 return(
  <FlatList
   data={this.state.itemList}   
   renderItem={this._renderItem}      
  />

 )
}

将您的代码更改为:

render(){
  return(
    <FlatList
      data={this.state.itemList}   
      extraData={this.state}
      renderItem={this._renderItem}      
    />
  )
}

FlatList 组件需要将 extraData 设置为 this.state 以便它在更改时更新。

有关详细信息,请参阅文档: https://facebook.github.io/react-native/docs/flatlist.html