* feat(components): [switch] add label attribute for accessibility * refactor(components): [switch] set default switch label to undefined * docs: version change
8.3 KiB
title | lang |
---|---|
Switch | en-US |
Switch
Switch is used for switching between two opposing states.
Basic usage
:::demo Bind v-model
to a Boolean
typed variable. The --el-switch-on-color
and --el-switch-off-color
CSS variables decides the background color in two states.
switch/basic
:::
Sizes
:::demo
switch/sizes
:::
Text description
You can add active-text
and inactive-text
attribute to show texts. use inline-prompt
attribute to control text is displayed inside dot.
:::demo You can add active-text
and inactive-text
attribute to show texts.
switch/text-description
:::
Display custom icons
:::tip
Use the active-icon
and inactive-icon
attribute to add icon. You can pass either string for the component name (registered in advance) or the component itself which is a SVG Vue component. Element Plus has provided a set of icon that you can find at icon
:::
:::demo You can add active-icon
and inactive-icon
attribute to show icons. use inline-prompt
attribute to control icon is displayed inside dot.
switch/custom-icons
:::
Extended value types
:::demo You can set active-value
and inactive-value
attributes. They both receive a Boolean
, String
or Number
typed value.
switch/extended-value-types
:::
Disabled
:::demo Adding the disabled
attribute disables Switch.
switch/disabled
:::
Loading
:::demo Setting the loading
attribute to true
indicates a loading state on the Switch.
switch/loading
:::
prevent switching
:::demo set the before-change
property, If false
is returned or a Promise
is returned and then is rejected, will stop switching.
switch/prevent-switching
:::
custom action icon ^(2.3.9)
:::demo You can add active-action-icon
and inactive-active-icon
attribute to show icons.
switch/custom-action-icon
:::
API
Attributes
Name | Description | Type | Default |
---|---|---|---|
model-value / v-model | binding value, it should be equivalent to either active-value or inactive-value , by default it's boolean type |
^[boolean] / ^[string] / ^[number] | false |
disabled | whether Switch is disabled | ^[boolean] | false |
loading | whether Switch is in loading state | ^[boolean] | false |
size | size of Switch | ^[enum]'' | 'large' | 'default' | 'small' |
'' |
width | width of Switch | ^[number] / ^[string] | '' |
inline-prompt | whether icon or text is displayed inside dot, only the first character will be rendered for text | ^[boolean] | false |
active-icon | component of the icon displayed when in on state, overrides active-text |
^[string] / ^[Component] | — |
inactive-icon | component of the icon displayed when in off state, overrides inactive-text |
^[string] / ^[Component] | — |
active-action-icon ^(2.3.9) | component of the icon displayed in action when in on state |
^[string] / ^[Component] | — |
inactive-action-icon ^(2.3.9) | component of the icon displayed in action when in off state |
^[string] / ^[Component] | — |
active-text | text displayed when in on state |
^[string] | '' |
inactive-text | text displayed when in off state |
^[string] | '' |
active-value | switch value when in on state |
^[boolean] / ^[string] / ^[number] | true |
inactive-value | switch value when in off state |
^[boolean] / ^[string] / ^[number] | false |
active-color ^(deprecated) | background color when in on state ( deprecated, use CSS var --el-switch-on-color instead ) |
^[string] | '' |
inactive-color ^(deprecated) | background color when in off state ( deprecated, use CSS var --el-switch-off-color instead ) |
^[string] | '' |
border-color ^(deprecated) | border color of the switch ( deprecated, use CSS var --el-switch-border-color instead ) |
^[string] | '' |
name | input name of Switch | ^[string] | '' |
validate-event | whether to trigger form validation | ^[boolean] | true |
before-change | before-change hook before the switch state changes. If false is returned or a Promise is returned and then is rejected, will stop switching |
^[boolean] / ^[Function]() => Promise<boolean> |
— |
id | id for input | ^[string] | — |
tabindex | tabindex for input | ^[string] / ^[number] | — |
label ^(2.4.1) ^(a11y) | same as aria-label in native input |
^[string] | — |
Events
Name | Description | Type |
---|---|---|
change | triggers when value changes | ^[Function](val: boolean | string | number) => void |
Exposes
Method | Description | Type |
---|---|---|
focus | manual focus to the switch component | ^[Function]() => void |