我如何在 Firebase 中计算文档中的集合

How can I count in Firebase the collections in a document

我知道如何计算 Firebase 中一个集合中有多少文档,但它是如何反过来工作的。我在一个文档中有几个集合,我需要找出有多少。 (在我的示例中为 2)

我的设置:

Collection     Document      Collections  Documents
[USERID]   -   [TESTS]   -   [1]   -      [ANSWERS]
                                          [RESULTS]
                         
                             [2]   -      [ANSWERS]
                                          [RESULTS]

我尝试了以下但它不起作用:

let refTest_1 = db.collection(USERID).doc('TESTS')
let testData_1
refTest_1.get().then(doc => {
  //testData_1 = doc.data()
  testData_1 = doc.size
}).then(function() {
  //console.log(Object.keys(testData_1).length)
  console.log(testData_1)
}).catch(error => {
  console.log("Error: " + error.message)
})  

有人知道这是怎么回事吗?

谢谢!

官方的Firebase Web 客户端没有实现获取一个对象的所有集合的方法。你可以看看文档here。在 Node.js 中,您可以使用同一文档中描述的 .listCollections() 方法。之后就得把collection里的所有文档都取出来,在js里手动统计。