ключи хранятся в списке и используются в keyExtractor - PullRequest
0 голосов
/ 02 декабря 2018

У меня есть вложенный объект, и я извлек ключи и значения с помощью Object.keys и Object.values ​​и сохранил их в разделах «keys» и «arrayData» ниже.Я не могу понять, как использовать keyExtractor со списком ключей («ключей»), которые я создал, чтобы соответствовать массиву.Есть идеи?

вложенный объект из базы данных

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 голосов
/ 02 декабря 2018

keyExtractor не представляет и не печатает никаких фактических данных, он только предоставляет «ключ», который используется RN для разграничения компонентов.Это невидимая ценность.Предполагая, что каждое значение в ключах уникально, это не должно возвращать никаких ошибок.Если вы хотите убедиться в том, что правильный ключ приведен в пару к правильному элементу при печати, вы можете сделать

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