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 FlatList 水平模式根本不起作用

reactjs - 虚拟化列表 : You have a large list that is slow to update

ios - react native : Half pixel border issues on high Pixel Density devices

react-native - 首次加载屏幕时,React Native FlatList scrollToIndex() 不起作用

android - 无法识别 JS 服务器

react-native - 有没有办法强制 WebView 链接点击在外部打开?

react-native - 添加新项目时防止倒置的 Flatlist 滚动到底部

reactjs - 如何在 React native 中连接数组内的字符串响应?

ios - 如何在 React Native 中支持 Split View

reactjs - React Native 中的高阶组件 (HOC) 身份验证