【发布时间】:2019-12-05 10:49:23
【问题描述】:
我有一个像这样的复杂对象:
{
"hot foods": [
{
"name": "something",
"ingredients": "something",
"price": 13
},
{
"name": "something",
"ingredients": "something",
"price": 13
}
],
"cold drinks": [
{
"name": "something",
"ingredients": "something",
"price": 13
},
{
"name": "something",
"ingredients": "something",
"price": 13
}
]
}
我想在一个 Collaseable 组件中呈现它,它来自这里:https://www.npmjs.com/package/accordion-collapse-react-native
我希望它在 CollapseHeader 组件和 CollapseBody 组件中渲染“热食”、“冷饮”,我想一一渲染这些对象数组。
但我无法弄清楚,因为我不太擅长 javascript,而且它不是我的核心语言。我只需要在 react 本机应用程序中以这种方式呈现它。
任何帮助或想法都会受到重视,我在互联网上找不到任何完全相同的例子。
这里让我向您展示我正在尝试的功能:
{
Object.keys(this.state.menuArr).map((category,index)=>{
return (
<Collapse>
<CollapseHeader>
<View>
<TouchableOpacity onPress={()=>{}} style={styles.waitressbutton}>
<Text> {category} {console.log(category)}</Text>
</TouchableOpacity>
</View>
</CollapseHeader>
{
this.state.menuArr[category].map((item,index)=>{
return(
<CollapseBody>
<Text>Ta daa!</Text>
<TouchableOpacity key={index} style={styles.addbutton} onPress={
}>
<Text key={Math.floor(Math.random() * 10000) + 1}> <Icon name='plus' color='#d7263d'/> {item} </Text>
</TouchableOpacity>
</CollapseBody>
);
}
)
}
</Collapse>
)
}
)
}
我的对象和我上面写的完全一样。这个函数只呈现类别名称,而不是 CollapseBody 部分的内部。
【问题讨论】:
-
你能分享一个关于世博小吃的工作示例,以便我们在那里实施
-
我正在直接使用 android 设备并且不使用 expo ,因此与尽可能多地口头告诉我的问题相比,弄清楚使用 expo 零食要困难得多
标签: javascript arrays json reactjs react-native