Empty 空状态

介绍

空状态时的占位提示。

引入

通过以下方式来全局注册组件,更多注册方式请参考组件注册

  1. import { createApp } from 'vue';
  2. import { Empty } from 'vant';
  3. const app = createApp();
  4. app.use(Empty);

代码演示

基础用法

  1. <van-empty description="描述文字" />

图片类型

Empty 组件内置了多种占位图片类型,可以在不同业务场景下使用。

  1. <!-- 通用错误 -->
  2. <van-empty image="error" description="描述文字" />
  3. <!-- 网络错误 -->
  4. <van-empty image="network" description="描述文字" />
  5. <!-- 搜索提示 -->
  6. <van-empty image="search" description="描述文字" />

自定义大小

通过 image-size 属性图片的大小。

  1. <!-- 不指定单位,默认为 px -->
  2. <van-empty image-size="100" description="描述文字" />
  3. <!-- 指定单位,支持 rem, vh, vw -->
  4. <van-empty image-size="10rem" description="描述文字" />

image-size 设置为数组格式,可以分别设置宽高。数组第一项对应宽度,数组第二项对应高度。

  1. <van-empty :image-size="[60, 40]" description="描述文字" />

自定义图片

需要自定义图片时,可以在 image 属性中传入任意图片 URL。

  1. <van-empty
  2. image="https://fastly.jsdelivr.net/npm/@vant/assets/custom-empty-image.png"
  3. image-size="80"
  4. description="描述文字"
  5. />

底部内容

通过默认插槽可以在 Empty 组件的下方插入内容。

  1. <van-empty description="描述文字">
  2. <van-button round type="danger" class="bottom-button">按钮</van-button>
  3. </van-empty>
  4. <style>
  5. .bottom-button {
  6. width: 160px;
  7. height: 40px;
  8. }
  9. </style>

API

Props

参数说明类型默认值
image图片类型,可选值为 error network search,支持传入图片 URLstringdefault
image-size图片大小,默认单位为 pxnumber | string | Array-
description图片下方的描述文字string-

Slots

名称说明
default自定义底部内容
image自定义图标
description自定义描述文字

类型定义

组件导出以下类型定义:

  1. import type { EmptyProps } from 'vant';

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件

名称默认值描述
—van-empty-paddingvar(—van-padding-xl) 0-
—van-empty-image-size160px-
—van-empty-description-margin-topvar(—van-padding-md)-
—van-empty-description-padding0 60px-
—van-empty-description-colorvar(—van-text-color-2)-
—van-empty-description-font-sizevar(—van-font-size-md)-
—van-empty-description-line-heightvar(—van-line-height-md)-
—van-empty-bottom-margin-top24px-

Empty 空状态 - 图1