您好,我正在嘗試使用 react native 構建待辦事項串列,但是我的渲染項功能有問題我嘗試使用 typescript 并且當我想在螢屏上顯示專案時遇到問題。到目前為止,這是我的代碼。
這將獲取所有任務并執行控制臺日志以檢查陣列是否存在(直到這里,它才有效)
useEffect(() => {
traerTareas()
if(tareas){
tareas.forEach((item:any) => {
console.log(item.titulo)
});
}
}, [])
然后使用 renderItem 函式
const renderItem = ({tarea}:any)=>{
return(
<>
<Text>{tarea.titulo}</Text>
<Text>{tarea.tarea}</Text>
</>)
} 最后使用 Flatlist
return (
<View style={{flex:1}}>
{tareas &&
<FlatList
data={tareas}
keyExtractor={(tarea)=> tarea.id}
renderItem={renderItem}
/>}
<Button
title='traer tareas'
onPress={traerTareas}
/>
<TouchableOpacity
style={style.boton}
onPress={()=> navigation.navigate('Agregar tarea')}
>
<Entypo name="plus" size={34} color="white" />
</TouchableOpacity>
</View>
) } 這會回傳給我渲染錯誤 undefined is not an object(evalating 'tarea.titulo') 我想知道我做錯了什么。感謝您的建議
uj5u.com熱心網友回復:
正如檔案所說,您必須使用這些引數:
renderItem({ item, index, separators });
而且你不能在這里使用你自己的變數名!
要修復您的代碼,您必須執行以下操作:
const renderItem = ({ item })=> (
<>
<Text>{item.titulo}</Text>
<Text>{item.tarea}</Text>
</>
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/493079.html
