我有多个类,小部件,列表视图和页面,它们使用的是来自Cloud Firestore的相同数据。问题在于,每次打开新页面时,我都必须从Cloud Firestore提取与上一页相同的数据,这将增加文档的读取次数。因此,我该如何创建一些常见数据源,并同时更新Cloud Firestore中的值,而不仅仅是页面之间的正常数据传递。
也许使用新的provider包的某些解决方案可能会有所帮助,但是我不确定或创建一个所有类都可以收听的全局流,但是我担心的是与该流的每个连接的读取都将被计数或只是流的第一次初始化才计算读取次数?
答案 0 :(得分:0)
如果您的数据有更改的风险,那么您肯定要使用查询快照来订阅流。如果使用状态管理,则可以将数据传递到需要它的任何小部件。避免放置。您在小部件中的查询。考虑使用BLoC或Redux进行状态管理。还有其他一些,但是很受欢迎的 complete 选项。提供程序不能解决此问题。它可以为难题提供帮助。您现在确实需要了解游戏的状态管理。需要继续保存您的读写
答案 1 :(得分:0)
我的应用程序还可以与Cloud Firestore一起使用,我使用BLoC从Firestore中获取数据。应用启动时,我会在主菜单中调用BLoC类。 如果您没有太多的小部件,则可以将数据传递给您的小部件。如果您有很多小部件,则可以使用“继承的”小部件使数据可用于您应用程序中的所有小部件。
两个有趣的视频: