在Firebase Cloud Function完成之前显示“正在加载” UI的UX方法? 无阻塞加载指示器阻塞性装载指示器

我有一个用于输入和计算学生评估的角度应用程序,其所有数据都存储在Firebase Cloud Firestore中。当添加新的评估时,我目前使用角度UI代码来计算学生的更新后平均值,并直接更新学生和整体班级统计信息。

出于多种原因,我想将计算和统计信息更新移至在Firestore文档的create / update事件中触发的云函数。我认为这将相当容易,但是随后我的UI几乎会立即返回,但直到功能完成(可能在几秒钟后),才会发生实际的统计更新。

我的UI当前正在监视快照更改,因此功能完成后,统计更改将自动显示。恐怕如果用户输入新的评估结果却没有立即看到更改,以为他们没有接受或出了点问题,可能会使用户感到困惑。但是几秒钟后,屏幕突然显示了最新统计信息的结果。

我认为在功能完成并收到新近更新的快照之前,最好显示一个加载指示器。我似乎找不到为此建议的方法或模式。在收到下一个快照之前,如何触发更新并显示进度指示器?我应该显示该指示器,然后在快照代码中查看该指示器是否可见并将其删除吗?

xiazai1999 回答:在Firebase Cloud Function完成之前显示“正在加载” UI的UX方法? 无阻塞加载指示器阻塞性装载指示器

恕我直言,我不认为您应该使UX行为过于复杂。

正如您已经在问题中画出的一样,当您写入触发Cloud功能的Firestore文档时,应该显示一个“加载指示器”,并在快照更改侦听器指示统计信息在后台更新时隐藏此加载指示器,结束。

就UX而言,您可以选择显示阻止的“加载指示器”或非阻止的“加载指示器”,具体取决于应用程序的确切功能。

无阻塞加载指示器

例如,如果在后端计算统计数字时用户仍然可以在屏幕上工作,请在统计字段附近显示加载指示器(例如,带有简单文本的小型微调器,“当前正在更新统计信息”)。

阻塞性装载指示器

如果相反,如果用户不应该在更新统计信息字段之前与UI进行交互,则可以在modal dialog box中显示加载指示符,以迫使用户等待并清楚地指示该应用程序正在在后端工作。

本文链接:https://www.f2er.com/3168469.html

大家都在问