react-native - 在 React Native 中使用 FlatList 上的数组索引

标签 react-native react-native-flatlist

我有一个对象数组,如下所示。所有对象都没有唯一键。

[
   {
       data1: "text1",
       data2: "text2"
   },
   {
       data1: "text3",
       data2: "text4"
   }
]

我有一个 FlatList 定义如下:
<FlatList

     data={this.state.items}
     renderItem={this.renderItem}
/>

我也尝试添加:
 keyExtractor={this._keyExtractor}

但我仍然收到相同的消息。我不确定上面是什么this._keyExtractor应该是在做。它是拉索引的内置函数还是我应该自己创建的函数?

我做错了什么,我怎么能只使用数组索引作为我的唯一键?

最佳答案

keyExtractor 已经为您提供给它的数据计算了数组索引。

因此,如果您想使用数组索引作为唯一元素,那么您可以这样做

<FlatList 
      data={this.state.items}
      renderItem={this.renderItem} //... toString() since it accepts string elements
      keyExtractor={(item, index) => index.toString()}
 />

关于react-native - 在 React Native 中使用 FlatList 上的数组索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50081664/

相关文章:

javascript - React-Native:更改 ImageBackground 的不透明颜色

ios - React Native 共享扩展 - 访问 AsyncStorage?

reactjs - 如何在 React 组件之外访问 Redux 存储

javascript - FlatList renderItem 被多次调用

javascript - scrollToIndex() 不是函数

react-native - Onesignal 将 '[modified]' 添加到某些用户的通知标题或正文

javascript - 对象作为 React 子对象无效(找到 : object with keys {. ..})

reactjs - 在 FlatList 中显示图像

react-native - 如何在 FlatList 上向上滚动时显示标题并在向下滚动时隐藏标题

reactjs - react native ,Redux : Fetch more/Load more