如何在FlatList extraData中传递多个对象或值

m9m*_*m9m 2 react-native react-native-flatlist

我有一种情况,我需要在FlatList extraData中同时传递State和Props。

我尝试了类似的方法,但是没有用

 <FlatList
      numColumns={1}
      data={this.props.artists}
      renderItem={this.renderArtistItem}
      initialNumToRender={15}
      keyExtractor={item => item.id}
      extraData={(this.state, this.props.league)}
    />
Run Code Online (Sandbox Code Playgroud)

怎么做?

小智 5

尝试这个:

<FlatList
  numColumns={1}
  data={this.props.artists}
  renderItem={this.renderArtistItem}
  initialNumToRender={15}
  keyExtractor={item => item.id}
  extraData={[this.state, this.props.league]}
/>
Run Code Online (Sandbox Code Playgroud)

因为它将作为额外数据中的数组工作。

  • 即使状态和道具没有改变,这不会强制不断地重新渲染吗?`var a = {}; [a] === [a]` 是错误的。 (2认同)