在我的 Firestore 数据库中,我有一个集合APP。
它有一个文档doc1。
doc1 还有一个子集合 coll1。
考虑以下示例。
let db = firebaseApp.firestore();
db.collection('APP').doc('doc1').get()
.then(doc => {
let doc1Data = doc.data();
});
我怎样才能检查响应中的集合。或者当我已经知道有一个子集合 coll1 时,我该如何循环遍历它的文档。
最佳答案
如果您不知道集合 ID,您可以使用 listCollectionIds
方法来获取它们:
var firestore = require('firestore.v1beta1');
var client = firestore.v1beta1({
// optional auth parameters.
});
var formattedParent = client.anyPathPath("[PROJECT]", "[DATABASE]", "[DOCUMENT]", "[ANY_PATH]");
client.listCollectionIds({parent: formattedParent}).then(function(responses){
var collectionIds = responses[0];
for (var i = 0; i < collectionIds.length; ++i) {
// doThingsWith(collectionIds[i])
}
})
.catch(function(err) {
console.error(err);
});
但是,听起来您已经知道它叫做 col1
,所以它更容易 - 只需引用它:
db.collection('APP').doc('doc1').collection('col1').get()
.then(snapshot => {
snapshot.forEach(doc => {
console.log(doc.id, '=>', doc.data());
});
})
.catch(err => {
console.log('Error getting documents', err);
});
关于node.js - FIRESTORE - 如何获取文档中集合的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46989769/