Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native 在reactNative中使用keyExtractor for flatLists的键名的最佳实践是什么?_React Native_React Native Flatlist - Fatal编程技术网

React native 在reactNative中使用keyExtractor for flatLists的键名的最佳实践是什么?

React native 在reactNative中使用keyExtractor for flatLists的键名的最佳实践是什么?,react-native,react-native-flatlist,React Native,React Native Flatlist,在同一组件中,假设我们正在呈现以下两个平面列表: const PROFILES = [ { id: '1', }, { id: '2', name: 'John Smith', }, { id: '3', name: 'Jane Doe', }, ]; const GROUPS = [ { id: '1', title: 'Group 1', }, { id: '2', title: '

在同一组件中,假设我们正在呈现以下两个平面列表:

const PROFILES = [
  {
    id: '1',
  },
  {
    id: '2',
    name: 'John Smith',
  },
  {
    id: '3',
    name: 'Jane Doe',
  },
];

const GROUPS = [
  {
    id: '1',
    title: 'Group 1',
  },
  {
    id: '2',
    title: 'Group 2',
  },
  {
    id: '3',
    title: 'Group 3',
  },
];

<FlatList
  data={PROFILES}
  renderItem={({ item, index }) =>
    renderProfile(item, index)
  }
  keyExtractor={(item) => item.id}
/>

<FlatList
  data={GROUPS}
  renderItem={({ item, index }) => renderGroup(item, index)}
  keyExtractor={(item) => item.id}
/>
:结束编辑

我似乎从来没有遇到过与此相关的错误,而且文档似乎没有提及任何内容,所以我一定是误解了什么。

好问题: 请记住,每个子对象都应该指定唯一的键,这意味着一个对象与另一个对象不同,因此可以使用相同的键

keyExtractor={(item) => `group_${item.id}`}
keyExtractor={(item) => `profile_${item.id}`}