Slider 滑块
在固定范围内拖动滑块。
基础用法
拖动滑块时显示当前值。
通过设置绑定值自定义滑块的初始值。
离散值
选项可以是离散的。
使用 step
属性设置步长。您可以通过设置 show-stops
属性来显示断点。
带输入框的滑块
通过输入框设置值。
设置 show-input
属性以在右侧显示输入框。
尺寸
位置
您可以自定义工具提示的位置。
范围选择
支持选择一个值的范围。
设置 range
属性会激活范围模式,其中绑定值是由两个边界值组成的数组。
垂直模式
将 vertical
属性设置为 true
可启用垂直模式。在垂直模式下,需要 height
属性。
显示标记
设置 marks
属性可以在滑块上显示标记。
API
属性
名称 | 描述 | 类型 | 默认值 |
---|---|---|---|
model-value / v-model | 绑定值 | number / object | 0 |
min | 最小值 | number | 0 |
max | 最大值 | number | 100 |
disabled | 滑块是否被禁用 | boolean | false |
步长 | 步长 | number | 1 |
show-input | 是否显示输入框,仅在 range 为 false 时有效 | boolean | false |
show-input-controls | 在 show-input 为 true 时,是否显示控制按钮 | boolean | true |
size | 滑块包装器的大小,在垂直模式下不起作用 | 枚举 | default |
input-size | 输入框的大小,当设置 size 时,默认为 size 的值 | 枚举 | default |
show-stops | 是否显示断点 | boolean | false |
show-tooltip | 是否显示提示信息 | boolean | true |
format-tooltip | 格式化提示信息 | Function | — |
range | 是否为范围选择 | boolean | false |
vertical | 垂直模式 | boolean | false |
高度 | 滑块高度,垂直模式下必须 | string | — |
aria-label a11y 2.7.2 | 原生 aria-label 属性 | string | — |
range-start-label | 当 range 为 true 时,范围开始的屏幕阅读器标签 | string | — |
range-end-label | 当 range 为 true 时,范围结束的屏幕阅读器标签 | string | — |
format-value-text | 格式化屏幕阅读器的 `aria-valuenow` 属性的显示 | Function | — |
防抖 | 输入时的防抖延迟,单位为毫秒,在 `show-input` 为 true 时有效 | number | 300 |
tooltip-class | Tooltip 的自定义类名 | string | — |
placement | Tooltip 的出现位置 | 枚举 | 上 |
marks | 标记,键的类型必须是 `number` 且必须在闭合区间 `[min, max]` 内,每个标记都可以自定义样式 | object | — |
validate-event | 是否触发表单验证 | boolean | true |
persistent 2.9.5 | 当滑块提示不活动且 `persistent` 为 `false` 时,popconfirm 将被销毁。当 `show-tooltip` 为 `false` 时,`persistent` 始终为 `false` | boolean | true |
label a11y 已废弃 | 原生 aria-label 属性 | string | — |
事件
名称 | 描述 | 类型 |
---|---|---|
change | 值改变时触发(如果鼠标正在拖动,此事件仅在鼠标释放时触发) | Function |
input | 数据改变时触发(在滑动过程中会实时触发) | Function |
类型声明
显示声明
ts
type SliderMarks = Record<number, string | { style: CSSProperties; label: any }>
type Arrayable<T> = T | T[]