Skip to content

Button 按钮

基于 Element Plus Button 增强的按钮组件,支持 Iconify 图标。

基础用法

使用 typeplainroundcircleicon 来定义按钮的样式。(icon 属性支持 Element Plus 图标和 Iconify 图标名称,例如 'tabler:refresh')

禁用状态

使用 disabled 属性来定义按钮是否被禁用。该属性接受一个 Boolean 类型的值。

链接按钮

WARNING

type="text" 已被 废弃,将在 3.0.0 版本中移除,请考虑切换到新的 API。

新的 API link 已在 2.2.1 版本中添加,你可以使用 type API 来设置链接按钮的主题。

Basic link button

Disabled link button

文字按钮

TIP

文字按钮已升级为新设计,如果你想使用之前的版本,可以查看 Link

API 也已更新,因为 type 属性也代表按钮的样式。所以 Element Plus 必须为文字按钮创建一个新的 API text: boolean

没有边框和背景色的按钮。

Basic text button

Background color always on

Disabled text button

图标按钮

使用图标为按钮添加更多含义。你也可以单独使用图标来节省空间,或者与文字一起使用。

使用 icon 属性来添加图标。你可以使用 Iconify 图标名称(例如 'tabler:home')或在 Element Plus 图标组件中查找图标列表。在文字右侧添加图标可以通过 <i> 标签实现。也可以使用自定义图标。以下示例使用 Iconify。

按钮组

显示为按钮组,可用于分组一系列类似的操作。

使用 <el-button-group> 标签来分组你的按钮。



加载状态按钮

点击按钮来加载数据,然后按钮显示加载状态。

设置 loading 属性为 true 来显示加载状态。

TIP

你可以使用 loading 插槽或 loadingIcon 来自定义加载组件。

注意:loading 插槽的优先级高于 loadingIcon

尺寸

除了默认尺寸外,按钮组件还提供了三个额外的尺寸供你在不同场景中选择。

使用 size 属性来设置额外的尺寸,可选值包括 largesmall

标签

你可以自定义元素标签,例如 button、div、a、router-link、nuxt-link。

div
a

Button API

Button 属性

名称说明类型默认值
icon图标组件或 iconify 图标名string / Component
loading-icon自定义加载图标组件string / ComponentLoading
Element Plus Button 属性
名称说明类型默认值
size按钮尺寸enum
type按钮类型,当设置 color 时,后者优先enum
plain是否为朴素按钮booleanfalse
text是否为文字按钮booleanfalse
bg是否始终显示文字按钮的背景色booleanfalse
link是否为链接按钮booleanfalse
round是否为圆角按钮booleanfalse
circle是否为圆形按钮booleanfalse
loading是否为加载中状态booleanfalse
loading-icon自定义加载图标组件string / ComponentLoading
disabled按钮是否为禁用状态booleanfalse
icon图标组件string / Component
autofocus原生 autofocus 属性booleanfalse
native-type原生 type 属性enumbutton
auto-insert-space自动在两个中文字符之间插入空格(仅当文本长度为 2 且所有字符都是中文时生效)booleanfalse
color自定义按钮颜色,自动计算 hoveractive 颜色string
dark深色模式,自动将 color 转换为深色模式颜色booleanfalse
tag自定义元素标签string / Componentbutton

Button 插槽

Element Plus Button 插槽
名称说明
default自定义默认内容
loading自定义加载中组件
icon自定义图标组件

Button 暴露

Element Plus Button 暴露
名称说明类型
ref按钮 html 元素object
size按钮尺寸object
type按钮类型object
disabled按钮是否禁用object
shouldAddSpace是否添加空格object

ButtonGroup API

ButtonGroup 属性

Element Plus ButtonGroup 属性
名称说明类型默认值
size控制该按钮组内按钮的大小enum
type控制该按钮组内按钮的类型enum
direction显示方向enumhorizontal

ButtonGroup 插槽

Element Plus ButtonGroup 插槽
名称说明子标签
default自定义按钮组内容Button

类型声明

显示声明
ts
import type { ButtonProps } from "element-plus"
import type { Component } from "vue"

export interface EpButtonProps extends Omit<ButtonProps, "icon"> {
  icon?: string | Component
}