空状态
Empty
初级通用空状态(Empty)是页面或内容区域已经完成加载、却没有可展示数据时呈现的界面状态。它告诉你为什么这里没有内容,以及接下来能做什么,比如在空项目列表里引导你创建第一个项目。
你可能会说:「这个列表现在一条数据都没有,别只留一片空白,帮我告诉用户接下来能做什么。」
动手看看项目列表的空状态
项目
0 个项目
搜索项目
还没有项目创建第一个项目,把任务和进度集中管理。
新建项目
列表情况
切换「列表情况」,看看同样没有列表项时,说明和操作如何变化;也可以悬停按钮,或用 Tab 键查看焦点反馈。
首次使用时确实一个项目都没有,所以直接解释现状,并把「新建项目」作为最顺手的下一步。
要点空状态要帮用户弄清哪几件事?
- 1
先确认数据确实为空
你得先知道请求已经结束,而且返回的是零条数据。因为加载中也可能暂时看不到内容,如果这时显示空状态,用户会误以为数据没了。
- 2
说清为什么没有内容
空项目列表和筛选后没有结果,原因不同。前者可以说“还没有项目”,后者要说明当前条件没有匹配项。这样用户才知道是该创建内容,还是调整条件。
- 3
给出对应的下一步
如果用户能创建项目,就放一个“新建项目”入口;如果是搜索无结果,就让他修改关键词或清除筛选。行动入口要跟当前原因对上,才不会把人带错方向。
容易混淆的地方
空状态说的是“已确认没有可展示的内容”,不是任何看起来空白的画面。数据还没回来时,我们看到的是加载状态,可以用骨架屏;请求失败时是错误状态,需要说明失败并提供重试。搜索无结果也属于空状态,但它和首次使用的空列表原因不同,引导动作也不同。
什么时候用
适合用
- 你做一个项目管理后台,用户刚注册还没有项目,可以用空状态解释现状,并提供新建项目的入口。
- 你做一个订单列表,用户设置筛选条件后没有匹配订单,可以用空状态提示调整条件或清除筛选。
- 你做一个 AI 工具的历史记录页,确认用户没有保存过记录后,可以用空状态引导他开始第一次使用。
不适合用
- 列表请求还没完成,只是暂时没有渲染出数据;这时用加载提示或骨架屏,等结果返回再判断是否为空。
- 接口报错导致内容无法显示;这时用错误提示说明问题并提供重试,而不是让用户以为记录为零。
- 用户打开了一个不存在的页面地址;这时用找不到页面的提示和返回入口,不把它当成内容列表的空状态。
练一练选一个答案,看看解释
你在做后台的订单列表。用户选了“近 7 天”,请求成功返回零条订单;取消筛选后能看到旧订单。此时列表区域怎么设计?
让 AI 帮你做复制给 AI Agent 直接用
请为订单列表实现空状态:仅在请求成功且结果为零条时显示。区分全部订单为空和筛选后无结果,分别给出准确文案与新建订单、清除筛选入口;加载中和请求失败时不要显示空状态。