【发布时间】:2020-06-18 13:55:33
【问题描述】:
我想创建一个基于二维数组的菜单:标题和图标名称。
这是我尝试过的:
class Menu2 extends React.Component{
constructor(props) {
super(props);
this.state = { Items: [['Home','home'],['User','user'],['Messages','envelope'], ['Finances','wallet'], ['Meal','silverware-fork-knife']]}
}
render(){
<View style={styles.menu}>
{this.state.Items.map((Items,i) => {
return(
<TouchableOpacity style={[styles.menu_item,styles.menu_item]} onPress={() => {this.props.navigation.navigate(Items[i][0]);}}>
<FontAwesome name={Items[i][1]} size={40} color="#fff"/>
<Text style={styles.menu_text}>{Items[i][0]}</Text>
</TouchableOpacity>
)
})};
</View>
}
}
export default Menu2
返回的错误是“TypeError undefined is not an object (evalating 'Items[i][1]')”
我所期望的是“i”将通过我的数组的迭代 0、1、2、3、4(在我的情况下循环 5 次),因此 Items[i][0] = 标题和 Items [i][1] = 图标名称。 但我无法让它像我希望的那样工作。
有什么想法吗?
【问题讨论】:
标签: javascript reactjs react-native react-native-android jsx