跳到正文

空状态

Empty

初级通用

空状态(Empty)是页面或内容区域已经完成加载、却没有可展示数据时呈现的界面状态。它告诉你为什么这里没有内容,以及接下来能做什么,比如在空项目列表里引导你创建第一个项目。

你可能会说:「这个列表现在一条数据都没有,别只留一片空白,帮我告诉用户接下来能做什么。」

动手看看

项目
0 个项目
共 6 个项目
搜索项目
移动端
进行中
还没有项目创建第一个项目,把任务和进度集中管理。
新建项目
没有匹配的项目找不到名称含「移动端」且状态为「进行中」的项目。
清除筛选条件
列表情况

切换「列表情况」,看看同样没有列表项时,说明和操作如何变化;也可以悬停按钮,或用 Tab 键查看焦点反馈。

首次使用时确实一个项目都没有,所以直接解释现状,并把「新建项目」作为最顺手的下一步。

要点

  1. 1

    先确认数据确实为空

    你得先知道请求已经结束,而且返回的是零条数据。因为加载中也可能暂时看不到内容,如果这时显示空状态,用户会误以为数据没了。

  2. 2

    说清为什么没有内容

    空项目列表和筛选后没有结果,原因不同。前者可以说“还没有项目”,后者要说明当前条件没有匹配项。这样用户才知道是该创建内容,还是调整条件。

  3. 3

    给出对应的下一步

    如果用户能创建项目,就放一个“新建项目”入口;如果是搜索无结果,就让他修改关键词或清除筛选。行动入口要跟当前原因对上,才不会把人带错方向。

容易混淆的地方

空状态说的是“已确认没有可展示的内容”,不是任何看起来空白的画面。数据还没回来时,我们看到的是加载状态,可以用骨架屏;请求失败时是错误状态,需要说明失败并提供重试。搜索无结果也属于空状态,但它和首次使用的空列表原因不同,引导动作也不同。

什么时候用

适合用

  • 你做一个项目管理后台,用户刚注册还没有项目,可以用空状态解释现状,并提供新建项目的入口。
  • 你做一个订单列表,用户设置筛选条件后没有匹配订单,可以用空状态提示调整条件或清除筛选。
  • 你做一个 AI 工具的历史记录页,确认用户没有保存过记录后,可以用空状态引导他开始第一次使用。

不适合用

  • 列表请求还没完成,只是暂时没有渲染出数据;这时用加载提示或骨架屏,等结果返回再判断是否为空。
  • 接口报错导致内容无法显示;这时用错误提示说明问题并提供重试,而不是让用户以为记录为零。
  • 用户打开了一个不存在的页面地址;这时用找不到页面的提示和返回入口,不把它当成内容列表的空状态。

练一练

你在做后台的订单列表。用户选了“近 7 天”,请求成功返回零条订单;取消筛选后能看到旧订单。此时列表区域怎么设计?

让 AI 帮你做

请为订单列表实现空状态:仅在请求成功且结果为零条时显示。区分全部订单为空和筛选后无结果,分别给出准确文案与新建订单、清除筛选入口;加载中和请求失败时不要显示空状态。

接下来学什么