Switch 开关

在两种互斥状态之间切换。

基础用法

v-model 绑定布尔值。开/关背景色由 CSS 变量 --u-switch-on-color--u-switch-off-color 控制。

尺寸

Open

Open

Open

文字描述

使用 active-textinactive-text 显示状态文案;inline-prompt 控制文字是否显示在滑块内侧(仅首字符)。

配置 active-textinactive-text

Pay by month

Pay by month

Y
超出省略
完整展示多个内容

自定义图标

TIP

使用 active-iconinactive-icon 设置图标:可传入已注册的组件名字符串,或直接传入 SVG Vue 组件。图标库见 图标

配置 active-iconinactive-iconinline-prompt 控制图标是否显示在滑块内侧。


扩展取值类型

通过 active-valueinactive-value 自定义开/关对应值,可为 BooleanStringNumber

禁用

设置 disabled 禁用开关。

加载中

loadingtrue 时显示加载状态。

阻止切换

设置 before-change:返回 false 或返回的 Promise 被拒绝时,将阻止状态切换。

自定义操作图标

使用 active-action-iconinactive-action-icon

自定义操作插槽

使用 active-actioninactive-action 插槽自定义操作区。

T

开关 API

开关 属性

名称说明类型默认值
model-value / v-model绑定值,应与 active-valueinactive-value 之一相等,默认布尔类型boolean / string / numberfalse
disabled是否禁用booleanfalse
loading是否加载中booleanfalse
size尺寸enum''
width宽度number / string''
inline-prompt图标或文字是否显示在滑块内;为文字时仅渲染首字符booleanfalse
active-icon打开状态图标,优先级高于 active-textstring / Component
inactive-icon关闭状态图标,优先级高于 inactive-textstring / Component
active-action-icon打开状态操作区图标string / Component
inactive-action-icon关闭状态操作区图标string / Component
active-text打开状态文案string''
inactive-text关闭状态文案string''
active-value打开状态绑定值boolean / string / numbertrue
inactive-value关闭状态绑定值boolean / string / numberfalse
name原生 namestring''
validate-event是否触发表单校验booleantrue
before-change切换前钩子;返回 falsePromise 被拒绝则阻止切换Function
id原生 idstring
tabindex原生 tabindexstring / number
aria-label a11y同原生 aria-labelstring

开关 事件

事件名说明类型
change绑定值变化时触发Function

开关 插槽

名称说明
active-action自定义打开侧操作区
inactive-action自定义关闭侧操作区
active自定义打开态内容
inactive自定义关闭态内容

开关 方法

名称说明类型
focus使开关获得焦点Function