Switch 开关
用于切换两种对立状态。
基础用法
将 v-model
绑定到一个 Boolean
类型的变量。 你可以使用 --el-switch-on-color
和 --el-switch-off-color
CSS 变量来设置两种状态的背景色。
尺寸
文字描述
使用 active-text
和 inactive-text
属性来添加文本描述。 使用 inline-prompt
属性来控制文本是否显示在圆点内。
使用 active-text
和 inactive-text
属性来添加文本描述。
自定义图标
提示
使用 active-icon
和 inactive-icon
属性来添加图标。 您可以传入已预先注册的组件名称(字符串)或者 SVG Vue 组件本身。 Element Plus 提供了一组图标,您可以在 图标 找到它们。
使用 active-icon
和 inactive-icon
属性来添加图标。 使用 inline-prompt
属性来控制图标是否显示在圆点内。
扩展的值类型
您可以设置 active-value
和 inactive-value
属性,它们接受 Boolean
、String
或 Number
类型的值。
禁用状态
添加 disabled
属性可禁用开关。
加载状态
将 loading
属性设置为 true
,以表示开关正在加载中。
阻止切换
设置 before-change
属性。 如果返回 false
或返回一个被拒绝的 Promise
,则将停止切换。
自定义操作图标 2.3.9
你可以添加 active-action-icon
和 inactive-active-icon
属性来显示图标。
自定义操作插槽 2.4.4
你可以使用 active-action
和 inactive-action
插槽来自定义操作。
API
属性
名称 | 描述 | 类型 | 默认值 |
---|---|---|---|
model-value / v-model | 绑定值,必须等于 `active-value` 或 `inactive-value`,默认为 `boolean` 类型 | 布尔值 / 字符串 / 数字 | false |
disabled | 开关是否被禁用 | boolean | false |
加载中 | 开关是否处于加载状态 | boolean | false |
size | 开关的尺寸 | 枚举 | '' |
width | 开关的宽度 | number / string | '' |
内联提示 | 图标或文本是否显示在圆点内,文本只渲染第一个字符 | boolean | false |
激活时的图标 | 处于 `on` 状态时显示的图标组件,会覆盖 `active-text` | string / Component | — |
非激活时的图标 | 处于 `off` 状态时显示的图标组件,会覆盖 `inactive-text` | string / Component | — |
激活时的操作图标 2.3.9 | 处于 `on` 状态时操作中显示的图标组件 | string / Component | — |
非激活时的操作图标 2.3.9 | 处于 `off` 状态时操作中显示的图标组件 | string / Component | — |
激活时的文本 | 处于 `on` 状态时显示的文本 | string | '' |
非激活时的文本 | 处于 `off` 状态时显示的文本 | string | '' |
激活时的值 | 处于 `on` 状态时的开关值 | 布尔值 / 字符串 / 数字 | true |
非激活时的值 | 处于 `off` 状态时的开关值 | 布尔值 / 字符串 / 数字 | false |
名称 | 开关的输入框名称 | string | '' |
validate-event | 是否触发表单验证 | boolean | true |
切换前的钩子 | 在开关状态改变前的钩子。 如果返回 `false` 或者返回一个被拒绝的 `Promise`,则将停止切换 | Function | — |
id | 输入框的 id | string | — |
tabindex | 输入框的 tabindex | string / number | — |
aria-label a11y 2.7.2 | 与原生输入框的 `aria-label` 相同 | string | — |
激活时的颜色 已废弃 | 处于 `on` 状态时的背景色 ( 使用 CSS 变量 `--el-switch-on-color` 替代 ) | string | '' |
非激活时的颜色 已废弃 | 处于 `off` 状态时的背景色 ( 使用 CSS 变量 `--el-switch-off-color` 替代 ) | string | '' |
边框颜色 已废弃 | 开关的边框颜色 ( 使用 CSS 变量 `--el-switch-border-color` 替代 ) | string | '' |
label a11y 已废弃 | 与原生输入框的 `aria-label` 相同 | string | — |
事件
名称 | 描述 | 类型 |
---|---|---|
change | 值改变时触发 | Function |
Switch 插槽
名称 | 描述 |
---|---|
激活时的操作 2.4.4 | 自定义激活时的操作 |
非激活时的操作 2.4.4 | 自定义非激活时的操作 |
暴露
方法 | 描述 | 类型 |
---|---|---|
focus | 手动聚焦到开关组件 | Function |