dart - 如何创建所有类和小部件都可以在 Flutter 中使用的通用数据源
问题描述
我有多个类、小部件、列表视图和页面,它们使用来自云 Firestore 的相同数据。问题是每次我打开一个新页面时,我都必须从 Cloud Firestore 中获取与上一页相同的数据,这会增加文档的读取量。那么,我如何创建一个通用数据源的东西,并随着云 Firestore 中值的更新而更新,而不仅仅是页面之间的正常数据传递。
也许使用新提供程序包的一些解决方案可以提供帮助,但我不确定或创建一个所有类都可以收听的全局流,但我担心的是每个连接到流的读取都会被计算在内,或者它只是计算读取次数的流的第一次初始化?
解决方案
我的应用程序也适用于 Cloud Firestore,我使用 BLoC 从 Firestore 获取数据。当应用程序启动时,我主要调用我的 BLoC 类。如果您没有太多的小部件,您可以将数据传递给您的小部件。如果您有很多小部件,您可以使用继承的小部件使数据可用于您的应用程序中的所有小部件。
两个有趣的视频:
推荐阅读
- r - 如何在ggplot2中标记折线图的特定部分?
- mysql - SQL 将同一表中的每个字段的新行插入表中
- python - 如何使用pytest模拟其他函数内部的函数调用?
- python - 明智地导入 JSON 项目,因此它只加载一次
- c# - itextsharp 5 生成的图像以比原始文件大的 pdf 文件显示
- excel - Excel:在其他工作表上启动宏
- git - repo 上传不审核(repo push 功能)
- python - Kafka Consumer 不使用 Spark 消费重新处理的数据
- elasticsearch - elasticsearch 磁盘使用/索引大小
- linux - 比较第一列,然后将linux中的两个文本文件与bash脚本结合起来?