存储在列表中的密钥,并在keyExtractor中使用它们

时间:2018-12-02 00:56:36

标签: list react-native react-native-flatlist

我有一个嵌套对象,我使用Object.keys和Object.values提取了键和值,并将它们存储在下面的“键”和“ arrayData”下。我不知道如何将keyExtractor与为匹配数组而创建的键(“键”)列表一起使用。有任何想法吗?

nested object from firebase

let data = this.props.jobHistory
let keys = Object.keys(data)
let arrayData = Object.values(data)

 <FlatList
      keyExtractor={(item, index) => keys[index]} //I thought this would work but it is printing nothing
      data={arrayData}
      renderItem={({item}) => {
        return (
          <Text>{JSON.stringify(item)}{"\n"}</Text>
        )}
    }

谢谢

1 个答案:

答案 0 :(得分:0)

keyExtractor不会显示或打印任何实际数据,它仅提供RN用来区分组件的“键”。这是无形的价值。假设键中的每个值都是唯一的,则不应返回任何错误。如果要在打印时验证是否将正确的钥匙与正确的物品配对,可以执行

keyExtractor={(item, index) => console.log(`${keys[index]}:${arrayData{index}}`);keys[index]} //I thought this would work but it is printing nothing