Skip to content

Switch 开关

使用

表示两种相互对立的状态间的切换,多用于触发「开/关」。

基础用法

绑定 v-model 到一个 Boolean 类型的变量。 可以使用 --el-switch-on-color 属性与 --el-switch-off-color 属性来设置开关的背景色。

on/off 自定义样式

通过activeColorinactiveColor属性设置开关的背景色。

尺寸

文字描述

使用active-text属性与inactive-text属性来设置开关的文字描述。 使用 inline-prompt 属性来控制文本是否显示在点内。

使用active-text属性与inactive-text属性来设置开关的文字描述。

显示自定义图标

TIP

使用 inactive-iconactive-icon 属性来添加图标。 您可以传递组件名称的字符串(提前注册)或组件本身是一个 SVG Vue 组件。 @ksware/ksw-ux 提供了一组图标,您可以在 icon component 查看。

:::demo You can add active-icon and inactive-icon attribute to show icons. use inline-prompt attribute to control icon is displayed inside dot.

扩展的 value 类型

你可以设置 active-valueinactive-value 属性, 它们接受 BooleanStringNumber 类型的值。

禁用状态

设置disabled属性,接受一个Boolean,设置true即可禁用。

加载状态

设置loading属性,接受一个Boolean,设置true即加载中状态。

阻止切换

设置beforeChange属性,若返回 false 或者返回 Promise 且被 reject,则停止切换

API

Switch Props

参数名描述类型默认值
model-value / v-model筛选配置项,包含字段、标题、数据类型、等信息,目前支持的类型有:string、number、date,默认为string绑定值,必须等于 active-value或inactive-value,默认为Boolean类型false
disabled是否禁用booleanfalse
loading是否显示加载中booleanfalse
sizeswitch尺寸enumbase
widthswitch宽度string | number''
size尺寸enumbase
inline-prompt无论图标或文本是否显示在点内,只会呈现文本的第一个字符booleanfalse
active-iconswitch状态为on时所显示图标,设置此项会忽略active-textstring | Component-
inactive-iconswitch状态为off时所显示图标,设置此项会忽略inactive-textstring | Component-
active-action-iconon状态下显示的图标组件string | Component-
inactive-action-iconoff状态下显示的图标组件string | Component-
active-coloron状态下显示的图标组件string-
inactive-coloroff状态下显示的图标组件string-
active-textswitch状态为on时所显示的文字string''
inactive-textswitch状态为off时所显示的文字string''
active-valueswitch状态为on时所绑定的值string | number | booleantrue
inactive-valueswitch状态为off时所绑定的值string | number | booleanfalse
before-changeswitch 状态改变前的钩子,返回false或者返回Promise且被reject则停止切换boolean | Function-

Switch Events

事件名描述类型
changeswitch状态发生变化时的回调函数Function

Switch Methods

方法名描述类型
focus使switch获得焦点Function

Switch Slots

插槽名描述参数
active-action自定义active行为-
inactive-action自定义inactive行为-