【发布时间】:2021-01-03 20:02:39
【问题描述】:
我正在使用 Firestore 和 React,我遇到以下情况。
我有 2 个集合:orders 和 users。
每个订单都有一个名为 userId 的字段,基于此我必须检索 users 集合 中的用户信息。
正如我所看到的,我有 2 个承诺:一个是获取订单,然后使用 for 循环,获取 userId 并再次获取用户信息。
所以我必须结合2个对象。
在订单对象中,我还需要用户详细信息
我试过了,但它不起作用。
useEffect(() => {
firestore()
.collection(`orders`)
.get()
.then(result => {
let data = result.docs.map(function(p) {
return firestore()
.collection(`users`)
.doc(p.data().orderId)
.get()
.then(function(user) {
return {id: user.id, user.data()};
});
});
Promise.all(data).then(function(values) {
console.log(values);
});
});
}, []);
【问题讨论】:
标签: javascript reactjs firebase google-cloud-firestore promise