我有一个Flatlist可以渲染一堆可点击的卡片。我想在用户单击卡时将available_days数组传递给RestaurantScreen,但是由于某些原因,由于某些原因,available_days数组的内容似乎消失了。它只是renderItem()函数内部的一个空数组,但是该数组填充在renderItem()函数的外部。
奇怪的是,某些卡正确接收了available_days数组。
我似乎无法弄清楚这里出了什么问题。
<FlatList
data={this.state.restaurants}
renderItem={({ item }) => {
return this.renderCard(item)
}}
keyExtractor={restaurant => restaurant.id}
/>
//this.state.restaurants
Object {
"id": 21,
"name": "Cheese",
"menu": Array [
Object {
"available_days": Array [0,1,2,3],
"id": 21,
},
],
}
renderCard(item) {
return item.menus.map((menu) => {
return (
<TouchableOpacity
style={{border: 'none'}}
activeOpacity={0.7}
onPress={() => {
this.goToRestaurantScreen(item)
}}>
<DealCard restaurant={item} menu={menu}></DealCard>
</TouchableOpacity>
)
})
}