Я пытаюсь отобразить массив данных DATA двумя способами: Обычный вид и FlatList . Что я узнал, мы передаем props
в map и renderItem .
Первый блок дает правильный вывод:
const DATA = [
{id: '1',title: 'First Item'},
{id: '2',title: 'Second Item'},
]
const list = DATA.map((lst)=>{
return(<Text key={lst.id}>{lst.title}</Text>)
})
const Home=()=>{
return (<View><Text>{list}</Text></View>)
}
export default Home
В следующем FlatList
Компоненте выдает ошибку:
TypeError:TypeError:undefined is not an object(evaluating 'lst.title')
Если я изменю lst
на Item
, тогда он показывает правильный вывод. item
является предопределенным ключевым словом в renderItem? Если я заменю item
на любое другое слово, оно выдаст ошибку.
const DATA = [
{id: '1',title: 'First Item'},
{id: '2',title: 'Second Item'},
]
const Itm=({title})=>{
return (
<View>
<Text>{title}</Text>
</View>
);
}
const Home=()=>{
return (
<FlatList
data={DATA}
renderItem={({lst}) => <Itm title={lst.title} />}
keyExtractor={itm => itm.id}
/>
);
}
export default Home