Firestore 控制台上的数据与查询数据库时检索到的数据不同

问题描述

我通过 firebase 控制台删除一个文档,但是当我运行我的项目并查找该文档时,它会检索已删除的文档(我在控制台中看不到)。

App after receiving the docSnapshot and parsing the json in it to retrieve the data of the deleted document

Firebase console showing there's no data saved in Cloud Firestore

不确定是否删除文档是触发此问题的原因。

尝试创建一个具有相同 ID 的新文档,然后查看应用程序是否会获取此新文档而不是已删除的文档。没有用,还带了删除的文档。

似乎用于在控制台上显示我的集合和文档的数据与运行我的项目时参考的数据不同。

我将此报告为错误,但是,有人遇到过类似的情况吗?您是如何修复的?

解决方法

这不是错误。 Firestore 客户端 SDK 有一项名为 offline persistence 的功能,该功能在 Android 和 iOS 中默认启用。此功能会缓存您的数据,因此即使设备处于离线状态,您的应用也可以访问它。 您可以通过将源参数传递给 0 1 1 3 2 7 3 11 Name: LL,dtype: int64 [ 1 3 7 11] Enter Desired: 2 1 3 Execute 0 3 5 -1 7 10 -5 11 16 -9 Name LL UL Best 3 Jose 11 16 -9 2 Jay 7 10 -5 1 Jenna 3 5 -1 0 John 1 3 0 方法来指定查询的数据源。

get()

如果您使用的是 SnapshotListener 并且文档存在于缓存中,则第一个结果将始终来自缓存。您可以通过执行以下操作来检查它:

documentReference.get(Source.SERVER)
// or
query.get(Source.SERVER)