Switch 开关

用于两个互斥选项,用来打开或关闭选项的选择,支持自定义颜色、加载状态和异步切换。

基础用法
通过 v-model 绑定布尔值:
开启
不同尺寸
设置 size 为 sm / md / lg:
带文字
通过 checked-text 和 unchecked-text 显示开关文字:
自定义颜色
通过 checked-color 和 unchecked-color 自定义开关颜色:
加载状态
设置 loading 显示加载动画,加载期间不可切换:
异步切换
设置 beforeChange 函数,返回 false 可阻止切换:

切换前会延迟 1 秒并弹窗确认

禁用状态
设置 disabled 禁用开关:

Props

参数类型默认值说明
modelValueboolean-开关状态(v-model),必填
disabledbooleanfalse是否禁用
size'sm' | 'md' | 'lg''md'尺寸
checkedTextstring-开启时显示的文字
uncheckedTextstring-关闭时显示的文字
checkedColorstring-开启时背景色
uncheckedColorstring-关闭时背景色
loadingbooleanfalse是否加载中
beforeChange(val: boolean) => boolean | Promise<boolean>-切换前回调,返回 false 阻止切换

Events

事件名类型说明
update:modelValue(val: boolean) => void开关状态变化时触发
change(val: boolean) => void开关状态变化时触发