【问题标题】:vue js firebase data refresh on document addvue js firebase数据刷新文档添加
【发布时间】:2021-12-16 15:19:50
【问题描述】:

正如标题所示,我只是想知道在向 Firestore 添加新文档后刷新客户端数据的好/最佳做法是什么。所以基本上为了总结功能,假设我有一个表格,表格下面是所有文档。什么是刷新数据的好方法,所以我不会强调火力。添加新文档是我正在开发的应用程序的重要组成部分,因此它可能会被大量使用。我想知道如果文档已成功添加,我应该在客户端添加它,还是应该再次发送所有文档的调用或其他什么。我熟悉快照选项,我只是不确定这是否是一个好习惯。提前谢谢你。

【问题讨论】:

    标签: firebase vue.js google-cloud-firestore


    【解决方案1】:

    理想的解决方案是使用快照。让我们看一下他们documentation的摘要。

    您应用中的

    本地写入会立即调用快照侦听器。这是因为一个名为latency compensation 的重要功能。 当您执行写入时,您的听众将 在数据发送到后端之前通知新数据。

    检索到的文档有一个 metadata.hasPendingWrites 属性 指示文档是否有尚未进行的本地更改 尚未写入后端。您可以使用此属性来确定 快照侦听器接收到的事件源。

    所以你看,你直接将文档添加到客户端与使用firestore snapshot是一样的,因为在本地写入的情况下,数据是直接由侦听器接收的,不会先到服务器再到服务器接收数据。

    此外,您甚至可以对limitsort 数据编写查询,快照侦听器将自动处理限制和排序数据的逻辑。不过,您甚至可以在使用get() 在客户端添加文档后查询数据,但这只是绕圈子。

    Snapshots 专为 bi-directional 更新而设计,我强烈建议您改用它们。

    参考

    【讨论】:

      猜你喜欢
      • 2022-06-18
      • 2018-07-29
      • 2021-10-18
      • 2021-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-13
      • 1970-01-01
      相关资源
      最近更新 更多