firebase - Flutter Firestore 同一文档的两个 StreamBuilder 算作 2 次读取?

标签 firebase flutter dart google-cloud-firestore

在我的 Flutter 应用中,如果我有两个嵌套的 StreamBuilder 从同一个文档读取,它会算作从 Firestore 读取两次吗?还是以一种只计为一次读取的方式进行缓存?

这是我正在谈论的例子。

StreamBuilder(
  stream: Firestore.instance.document(path).snapshots(),
  builder: (context, asnap){
    //Some nested widgets...
    return StreamBuilder(
      stream: Firestore.instance.document(path).snapshots(),
      builder: (context, asnap){
        return MyWidget();
      },
    );
  },
);

最佳答案

据我所知,Firestore 客户端会删除这些监听器的重复数据。因此,如果第一个监听器已经针对完全相同的数据处于事件状态,则它不会附加第二个监听器。因此,您不会为两次读取付费,但(对您的用户来说可能更重要)数据只会传输一次。

关于firebase - Flutter Firestore 同一文档的两个 StreamBuilder 算作 2 次读取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56814347/

相关文章:

javascript - 在 Firebase 上用字符串设置 child 的名字

ios - 无法弄清楚 Firebase 数据库结构

Flutter 如何将单个数据从 Stream 传递到另一个屏幕并进行更新

SwiftUI:图像异步更改后 View 不会更新

ios - 为什么 Auth.auth().currentUser?.uid 返回 nil 值?

ios - Flutter image_picker视频库OSError : Operation not permitted [Errno 1] IOS 13

android - Flutter - 禁用状态栏时缺口区域为空白

firebase - 更新 Firebase 实时数据库对象中的特定值

flutter - 为什么 Map 和 List 是可实例化的,但它们在 dart 中是抽象类

dart - 如何从 Dart 中的字符串中删除最后一个字符