React Native FlatList 只渲染 1 个对象

React Native FlatList rendering only 1 object

我一直在努力在 FlatList 中渲染这个对象。请有人可以帮助我。 FlatList 中有 2 个对象,但由于某种原因它只渲染 1 个对象

peopleArray

Const peopleArray = [
          "id": "U1600078348291",
          "People": [
            {
              "number": "4",
              "value": "Jack Sparrow",
            },
            {
              "number": "6",
              "value": "Daniel Roberts",
            },
          ],
        ]

我尝试了以下方法,但没有用

第一次尝试

<FlatList
      data={Object.keys(obj)}
      keyExtractor={(item, index) => item.index}
 />

第二次尝试

FlatList
      data={peopleArray}
      keyExtractor={(item) => item.id}
      renderItem={({item})=><Text>{item.index.key.value}</Text>}
/>

第三次尝试 这有效,但只显示两个对象中的一个

<FlatList
      data={peopleArray}
      keyExtractor={(item) => item.id}
      renderItem={({item})=>{<Text>{item[index].value}</Text>}}
/>

第四次尝试

<FlatList
      data={peopleArray}
      keyExtractor={(item) => item.id}
      renderItem={({item})=>{<Text>{item.value}</Text>}}
/>

我的代码:

const People = (props) => {
  const peopleArray = props.navigation.getParam('people')
  const renderPeople = ({item}) => {
    return <Text>{item[index].value}</Text>
  };
  return (
    <FlatList
      data={peopleArray}
      keyExtractor={(item) => item.id}
      renderItem={renderPeople}
    />
  );
};

根据“我的代码”部分,您希望从“人员”中创建列表。 你的 FlatList 应该看起来像这样:

<FlatList
     data={peopleArray}
     keyExtractor={(item) => item.id}
     renderItem={renderPeople}
 />

并且 renderPeople 像这样:

const renderPeople = ({item}) => (
           <View>
               {
                 item.People.map(person => <Text>{person.value}</Text>)
               }
           </View>
)