javascript - Firestore 查询错误:对象作为反应子项无效
问题描述
我正在尝试从 firestore 进行查询:我想将具有相同字段 ID 的集合任务中的所有字段放入 Clients/1/Missions (在 firestore 和查询代码下方)。
我试过这样做,但我有这个错误:
对象作为 React 子对象无效(找到:具有键 {_U、_V、_W、_X} 的对象)。如果您打算渲染一组孩子,请改用数组
这是我的代码:
const GoalScreen = async (props) => {
IDUserNum = 1;
IDUser = IDUserNum.toString();
if (IDUser) {
const array = [];
const a = await firebase.firestore().collection('Clients').doc(IDUser).collection('Missions').get();
if(!a) {
return(
<View><Text>ciao</Text></View>
)
}
a.forEach((IDMission) => {
const b = a.doc(IDMission).get().ID_Mission;
const c = firebase.firestore().doc(b).data();
array.push[c];
console.log(c);
})
return (
<View style={styles.container}>
<Text style={styles.loginText}>Here the should be the goals</Text>
</View>
);
}
return (
<View><Text>orso</Text></View>
)
}
这里是 Firestore 的字段
解决方案
哦,好的,有了额外的数据,我可以提供更好的帮助。问题是您使用的是 forEach,它不返回任何内容,因此组件不会收到任何要渲染的内容。尝试使用.map,您至少应该解决第一个错误。
推荐阅读
- shell - 是否可以在 shell 变量中将脚本传递给 awk?
- html - 如何在选择/选项下拉列表中删除焦点/悬停的蓝色背景
- node.js - 私有子网中的节点 AWS Lambda 无法返回回调
- python - 使用 tf.gradients 时出现 TensorFlow 错误:TypeError: Fetch argument None has invalid type
- microsoft-graph-api - 使用 microsoft-graph api 回复电子邮件时如何添加附件?
- azure - 将 Azure Active Directory 与 .NET Web Api 连接,身份验证始终为 false
- java - javax.mail.internet.MimeMessage 无法转换为 javax.mail.Message
- jquery - 用 AND 组合两个函数
- reactjs - Antd getFieldDecorator() 的选项触发不起作用
- javascript - 单击图像“推送”图像下方列表的其余部分