React native 如何使用.map()呈现此javascript对象中的数据?
我通过组合来自firebase数据库的数据构建了以下javascript对象:React native 如何使用.map()呈现此javascript对象中的数据?,react-native,React Native,我通过组合来自firebase数据库的数据构建了以下javascript对象: [ { "-Lsx4Wzd4k7Xamoxoior": { "groupId": "-Lsx4Wzd4k7Xamoxoior", "numMembers": 1, "groupName": "GroupOne", "imageUrl": "" }, "-Lsx4aoXcClZrOMN3zR_": { "uid": "-Lsx4ao
[
{
"-Lsx4Wzd4k7Xamoxoior": {
"groupId": "-Lsx4Wzd4k7Xamoxoior",
"numMembers": 1,
"groupName": "GroupOne",
"imageUrl": ""
},
"-Lsx4aoXcClZrOMN3zR_": {
"uid": "-Lsx4aoXcClZrOMN3zR_",
"numMembers": 1,
"groupName": "GroupTwo",
"imageUrl": ""
},
"-Lsxzv0N9owZ7cWiH-H_": {
"uid": "-Lsxzv0N9owZ7cWiH-H_",
"numMembers": 1,
"groupName": "GroupThree",
"imageUrl": ""
}
}
]
我将groupsData状态设置为此对象。我想使用map()函数在各自的视图中呈现每个组的数据
以下是我到目前为止在render()方法中尝试的内容;加载时,它不会显示任何内容:
render(){
返回(
{this.state.groupsData.map(groupData=>{
返回(
{groupData.groupName}
{groupData.numMembers}成员
导航('GroupScreen',{groupUid:groupData.groupUid})}>
视图组
);
})}
);
}
任何帮助都将不胜感激;我以前从未使用过map()。首先,此组数据在数组中只有一个对象。如果我理解正确,您的用例是显示组数据。修改组数据将值状态为
const groupData ={
"-Lsx4Wzd4k7Xamoxoior": {
"groupId": "-Lsx4Wzd4k7Xamoxoior",
"numMembers": 1,
"groupName": "GroupOne",
"imageUrl": ""
},
"-Lsx4aoXcClZrOMN3zR_": {
"uid": "-Lsx4aoXcClZrOMN3zR_",
"numMembers": 1,
"groupName": "GroupTwo",
"imageUrl": ""
},
"-Lsxzv0N9owZ7cWiH-H_": {
"uid": "-Lsxzv0N9owZ7cWiH-H_",
"numMembers": 1,
"groupName": "GroupThree",
"imageUrl": ""
}
};
这是一个对象,密钥是firebase发送的。现在使用Object.keys()遍历。作为:
<ScrollView>
{Object.keys(data).map(key => {
const group = data[key];
return (
<View>
<Text>{group.groupName}</Text>
<Text>{group.numMembers} members</Text>
<Image source={{ uri: group.imageUrl }} />
<TouchableOpacity onPress={() => navigate('GroupScreen', { groupUid: group.groupUid })} >
<Text>View group</Text>
</TouchableOpacity>
</View>
);
})}
</ScrollView>
{Object.keys(data.map)(key=>{
常量组=数据[键];
返回(
{group.groupName}
{group.nummbers}个成员
导航('GroupScreen',{groupUid:group.groupUid})}>
视图组
);
})}
希望这有帮助