全局可更新数据的公认模式是什么?

时间:2019-01-09 00:24:42

标签: flutter

我遍历了有关Flutter的几篇教程,发现它们涵盖的基础知识还不错,但是好的设计和好的体系结构的某些方面却一直缺失。我正在Flutter中编写我的第一个实际(不是玩具)应用程序,发现自己遇到了这些遗漏的问题。

  1. 全局数据。一旦有人安装了该应用程序并尝试使用该应用程序,我请他们登录/创建一个帐户,因为这是专门用于管理人群的应用程序。我在后端使用Firebase,完成身份验证的包从所有内容返回Future 。因此,是的,在构建使用用户数据的Widget时,我可以使用FutureBuilder。就是说,似乎很奇怪,必须继续键入样板化的FutureBuilder代码,以在要使用用户ID的每个位置取消引用用户,以查找其数据(它们属于什么组,他们有待执行的操作等)。 。我真的觉得应该有一种方法来调用Future,获取实际的用户对象,然后将其存储在某个位置,以便任何需要用户ID进行查询的人都可以获取它。什么是正确的解决方案?我不敢相信我是唯一遇到这个问题的人。

  2. 可更新数据。我有一个页面,其中列出了当前用户所属的组。但是,用户可以创建新组,加入现有组或离开组。当他们这样做时,我需要重新绘制页面。群组列表来自运行Firebase查询,因​​此执行操作(加入,离开等)应向应用发出信号以重绘页面,这将带来重新运行查询的副作用。可以想象,可能使页面依赖于查询结果(如何?),并在更新时重新绘制页面,而是在某个位置放置一些小部件来跟踪查询。这里还有一个answer暗示这可能是正确的方法,但这实际上与相对不变的数据有关(对于单个用户来说,语言环境并不会经常改变)。所以,再次,我不敢相信我是唯一做这种事情的人。在这种情况下,最佳做法是什么?

0 个答案:

没有答案