首页 > 解决方案 > 如何删除 Source.CACHE 中的特定 Firestore 文档?

问题描述

我可以指定源如果我想从 firestore 获取数据,无论是默认值、服务器还是缓存,如下所示:

query.get(Source.CACHE)

假设如果使用上面的代码,我通常会得到 50 个文档。现在我想从缓存中的那个查询中删除一个特定的文档,所以我只想得到 49 个文档。

怎么做 ?是否可以 ?

标签: firebasegoogle-cloud-firestore

解决方案


您无法直接控制 Firebase SDK 维护的内部缓存的状态。您不能删除或使特定项目无效。

缓存完全由 SDK 管理。SDK 根据文档是否与服务器同步来确定何时添加或删除文档。

您可以使用 SDK 删除文档,这会将其从缓存结果中删除。但该删除最终将与服务器同步,这是一个永久性更改。

如果您的步骤显示内部缓存存在某种错误或与服务器的内容不一致,请向Firebase 支持提交错误报告,现在显示该错误以重现该问题。


推荐阅读