【问题标题】:How to check if the new document is being added in a Firestore collection如何检查新文档是否正在添加到 Firestore 集合中
【发布时间】:2021-10-09 07:21:58
【问题描述】:

我正在使用 Firestore 将数据存储在我的应用程序中,并将 nodeJs 作为我的客户端 sdk。

下面给出的是 Firestore 结构。

CollectionA1 中的文档由端点endpoint_A1 更新,CollectionA2 中的文档由endpoint_A2 更新。

每当我在某个端点收到请求时,我需要检查是否有任何新文档正在写入另一个集合。

例如,假设我在endpoint_A1 中收到请求,这会将文档添加到CollectionA1 中。在此之后,我需要检查CollectionA2 中是否正在写入新文档,然后继续。

如果您能就此提供一些见解,那将非常有帮助。

谢谢

【问题讨论】:

    标签: node.js google-cloud-platform google-cloud-firestore


    【解决方案1】:

    Firestore 默认首先离线。这意味着您写入的所有数据都会写入缓存并“稍后”同步到后端。这可能会使同步数据看起来需要更长的时间。您还可以在客户端使用 firestore 代码,因为它是同步的,因为您无需等待它完成。

    通常实时侦听器会注意到此类写入缓存并通知您,就好像它们写入后端一样。

    要检查您的 doc 是否已添加到服务器上的集合中,您需要设置实时侦听器以包括 includeMetadataChanges,如下所示:

    db.collection("cities").doc("SF")
        .onSnapshot({
            // Listen for document metadata changes
            includeMetadataChanges: true
        }, (doc) => {
            // ...
        });
    

    你可以红更多here。

    【讨论】:

    • 感谢您的回答。这似乎是我正在寻找的解决方案。我将检查这是否适用于我的应用程序并更新您。
    猜你喜欢
    • 2019-04-19
    • 1970-01-01
    • 1970-01-01
    • 2020-08-11
    • 2020-01-05
    • 2019-01-08
    • 2023-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多