怎样统一加载、空白、错误与成功状态?
在等待、没有内容、失败和完成时说明真实情况,并给出可行的下一步。
界面状态告诉用户当前发生了什么。加载、空内容、错误和成功需要分别表达,不能全部显示一块空白或同一条“暂无数据”。
先记住这几件事
- 加载状态 表示仍在读取或处理,不代表已经失败或没有内容。见 Cloudscape 加载与刷新指南 。
- 空状态 是读取成功但没有项目; 无匹配状态 是条件下找不到结果。见 Cloudscape 空状态指南 。
- 错误说明发生了什么,以及用户能做的下一步;能保留的输入和上下文应尽量保留。
- 成功说明真实结果,需要时提供查看入口;关键反馈还应让辅助工具获得,不能只依赖视觉变化。
状态切换的流程
状态对照的示意
下面是教学用项目列表。
| 实际情况 | 原先统一提示 | 应表达的意思 |
|---|---|---|
| 仍在读取 | 暂无项目 | 正在读取 |
| 读取成功,未创建过 | 暂无项目 | 尚未创建,可新增 |
| 读取失败 | 暂无项目 | 读取失败,可重试 |
| 新增成功 | 没有反馈 | 已创建,可查看 |
用一个例子走一遍
用户首次打开项目列表,网页先显示读取中。读取成功后发现没有项目,于是解释“还没有项目”并提供创建入口。创建请求失败时保留可保留内容并说明原因;收到成功结果后,才显示已创建和新项目入口。
边界与常见误解
骨架屏 是用占位形状预示将出现的内容,不是真实数据,也不能无限代替错误说明。转圈停止不代表成功。反馈显示多久要按重要性和使用方式安排,不能让关键结果一闪而过。