如果Firestore数据库发生更改,我是否要再次阅读所有文档?

sar*_*rah 0 android ios firebase google-cloud-firestore

假设我尝试使用Firestore监听器获取用户喜欢的eventID列表。我还使用离线持久性。

从此线程:Firestore-使用缓存直到更新在线内容

我知道监听器将立即使用缓存中的结果触发,如果有更改结果,我将获得包含更改的另一个快照。

在此处输入图片说明

快速地,获取列表的参考是:

FirestoreDocumentReference.users(uidUser: uid).reference().collection("likedEvents").addSnapshotListener({ (snapshot, error) in )}
Run Code Online (Sandbox Code Playgroud)

假设首先在Firestore数据库中有100个用户喜欢的eventID,然后用户又有另一个50个事件,这意味着我现在在数据库中有150个喜欢的eventID。

由于数据库从100更改为150,Firestore会与服务器核对吗?这会给我另一个快照。

我的问题是...

从Firestore接收新快照后,我要阅读150个文档还是仅阅读50个文档?我的意思是,我要重新阅读所有文档还是只是更改文档?

因为读取操作会影响Firestore的定价

小智 5

才50 :-)
https://firebase.google.com/docs/firestore/pricing#listens

每次添加或更新结果集中的文档时,您都要付费阅读