Switch 开关
示例
尺寸
可选的 ui 属性值:small/large。
<template>
<article>
<section>
<veui-switch v-model="readonly">
Read-only
</veui-switch>
<veui-switch v-model="disabled">
Disabled
</veui-switch>
</section>
<section>
<veui-switch
v-model="on"
:readonly="readonly"
:disabled="disabled"
ui="large"
>
Large size
</veui-switch>
<veui-switch
v-model="on"
:readonly="readonly"
:disabled="disabled"
>
Normal size
</veui-switch>
<veui-switch
v-model="on"
:readonly="readonly"
:disabled="disabled"
ui="small"
>
Small size
</veui-switch>
</section>
</article>
</template>
<script>
import { Switch } from 'veui'
export default {
components: {
'veui-switch': Switch
},
data () {
return {
on: false,
readonly: false,
disabled: false
}
}
}
</script>值设定
可以通过设置 true-value 和 false-value 来修改打开、关闭状态下 model 属性(v-model)的值。
Status: On
<template>
<article>
<veui-switch
v-model="status"
true-value="ON"
false-value="OFF"
>
Bluetooth
</veui-switch>
<p>Status: {{ statusMap[status] }}</p>
</article>
</template>
<script>
import { Switch } from 'veui'
const STATUS_MAP = {
ON: 'On',
OFF: 'Off'
}
export default {
components: {
'veui-switch': Switch
},
data () {
return {
status: 'ON',
statusMap: STATUS_MAP
}
}
}
</script>API
属性
| 名称 | 类型 | 默认值 | 描述 | ||||||
|---|---|---|---|---|---|---|---|---|---|
ui | string | - | 预设样式。
| ||||||
model | * | - |
当前状态的值。打开状态为 | ||||||
checked | boolean | false |
是否处于打开状态。 | ||||||
true-value | * | true | 打开状态对应的值。 | ||||||
false-value | * | false | 关闭状态对应的值。 | ||||||
disabled | boolean | false | 是否为禁用状态。 | ||||||
readonly | boolean | false | 是否为只读状态。 |
插槽
| 名称 | 描述 |
|---|---|
default | 开关的描述文本,点击时会切换选择状态。无默认内容。 |
事件
| 名称 | 描述 |
|---|---|
change | 用户切换打开状态时触发,回调参数为 (checked: boolean)。checked 表示当前是否打开。 |
input |
打开状态变化后触发,回调参数为 |
此外,Switch 支持如下的原生事件:
auxclick、click、contextmenu、dblclick、mousedown、mouseenter、mouseleave、mousemove、mouseover、mouseout、mouseup、select、wheel、keydown、keypress、keyup、focus、blur、focusin、focusout。
回调参数均为相应的原生事件对象。