Firestore还没有返回任何记录,我在控制台中看到它们

时间:2018-02-19 11:32:32

标签: javascript firebase google-cloud-firestore

来自我的应用和javascript控制台

firestore.collection('organizations/f1f4002a-1fb2-4805-baf1-a1a709f228e9/emailsSent').get().then(console.log)

返回QuerySnapshot,其中为empty:true

但显然有一条记录。 我写的每个其他查询似乎都有效。即,任务日志,电子邮件等

```

firebase console

我觉得我疯了,这可能是非常愚蠢的事情,所以我提前道歉。

2 个答案:

答案 0 :(得分:3)

请注意,控制台中的文档名称455...2c2显示在斜体中,这绝对不是控制台中显示的文档的正常情况。斜体实际上意味着文档已被删除,但是,它可能包含未删除的其他子集(尝试单击它)。

由于Firestore查询很浅,因此您尝试执行的get()不会产生任何文档,因为该集合中实际上没有任何文档。

系统中的某些内容可能已删除该文档而未删除其子集,因此可能有必要弄清楚对该删除负责的内容,并对其进行修改以便删除其子集也是如此。 (否则他们将无限期地在你的数据库中保持"孤立")

平均而言,如图所示,您对查询无能为力 - 它会返回正确的结果。

答案 1 :(得分:0)

试试这个......

const db = admin.firestore();

return db.collection('organizations/f1f4002a-1fb2-4805-baf1-a1a709f228e9/emailsSent').get().then(snapshot => {
  snapshot.forEach (doc => {
    console.log(`ID: ${doc.id}`);
    console.log(doc.data());
  });
});