首页 文章

Firebase - Firestore - 我会读多少时间阅读文档

提问于
浏览
4

通过Firebase的新Firestore,我发现我对Observables知之甚少 .

我的问题如下:

我用db.collection('room')获得了一些数据 .

  • 如果我不通过订阅收听observable,我会获取文档吗? (我认同) .

  • 对于我的收藏“房间”的每次更改,它是否被Firestore视为“新文件阅读”?

  • 如果我的应用程序中有重复的Observables返回db.collection('room'),我是否会对Firestore数据库进行X调用或只调用一次?

谢谢!

1 回答

  • 7

    如果我不通过订阅收听observable,我会获取文档吗? (我认同) .

    当你调用 var ref = db.collection('room') 时, ref 实际上不是一个可观察的,它是对 'room' 集合的引用 . 创建此引用不会执行任何数据读取(来自网络或磁盘) .

    当您调用 ref.get()ref.onSnapshot() 时,您将从服务器获取文档 .

    对于我的收藏“房间”的每一次更改,它是否被Firestore视为“新文件阅读”?

    如果您正在侦听整个集合(没有 where().orderBy() 子句)并且您有一个活动的 onSnapshot() 侦听器,那么是,每次在集合中添加,更改或删除新文档时,都将向您收取文档读取操作的费用 .

    如果我在我的应用程序中有重复的Observables返回db.collection('room'),我会对Firestore数据库进行X调用吗?

    如果您在两个位置收听相同的Cloud Firestore数据,则只能对服务器进行一次调用,并为一次读取操作付费 . 将多个侦听器附加到一个引用没有成本/性能损失 .

相关问题