从Firestore抓取子集合数据可以通过以下步骤实现:
const userRef = db.collection('users').doc('user_id');
const ordersRef = userRef.collection('orders');
ordersRef.get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(doc.id, ' => ', doc.data());
});
})
.catch((error) => {
console.log('Error getting orders: ', error);
});
在上面的代码中,我们首先获取到特定用户的文档引用(使用doc('user_id')
),然后通过该引用获取到该用户的"orders"子集合的引用(使用collection('orders')
)。最后,我们使用get()
方法来获取子集合中的所有文档,并通过遍历querySnapshot
来访问每个文档的数据。
where()
方法来指定特定的条件,如下所示:ordersRef.where('status', '==', 'completed').get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(doc.id, ' => ', doc.data());
});
})
.catch((error) => {
console.log('Error getting completed orders: ', error);
});
在上面的代码中,我们使用where('status', '==', 'completed')
来过滤出状态为"completed"的订单。
总结起来,从Firestore抓取子集合数据的步骤包括连接到Firestore数据库、获取子集合的引用、使用适当的API获取子集合数据,并可以使用查询条件来过滤结果。
领取专属 10元无门槛券
手把手带您无忧上云