• Slider 滑块
    • 概述
    • 代码示例
    • API
      • Slider props
      • Slider events

    Slider 滑块

    概述

    滑动输入器,用于在数值区间/自定义区间内进行选择,支持连续或离散值。

    代码示例

    Slider 滑块 - 图1

    基础用法

    滑块的基本用法,可以使用 v-model 双向绑定数据。

    通过设置属性 range 开启双滑块,通过设置属性 disabled 禁用滑块。

    注意,单滑块时,value 格式为数字,当开启双滑块时,value 为长度是2的数组,且每项为数字。

    1. <template>
    2. <Slider v-model="value1"></Slider>
    3. <Slider v-model="value2" range></Slider>
    4. <Slider v-model="value3" range disabled></Slider>
    5. </template>
    6. <script>
    7. export default {
    8. data () {
    9. return {
    10. value1: 25,
    11. value2: [20, 50],
    12. value3: [20, 50]
    13. }
    14. }
    15. }
    16. </script>

    Slider 滑块 - 图2

    离散值

    通过设置属性 step 可以控制每次滑动的间隔。

    1. <template>
    2. <Slider v-model="value4" :step="10"></Slider>
    3. <Slider v-model="value5" :step="10" range></Slider>
    4. </template>
    5. <script>
    6. export default {
    7. data () {
    8. return {
    9. value4: 30,
    10. value5: [20, 50]
    11. }
    12. }
    13. }
    14. </script>

    Slider 滑块 - 图3

    显示间断点

    通过设置属性 show-stops 可以显示间断点,建议在 step 间隔不密集时使用。

    1. <template>
    2. <Slider v-model="value6" :step="10" show-stops></Slider>
    3. <Slider v-model="value7" :step="10" show-stops range></Slider>
    4. </template>
    5. <script>
    6. export default {
    7. data () {
    8. return {
    9. value6: 30,
    10. value7: [20, 50]
    11. }
    12. }
    13. }
    14. </script>

    Slider 滑块 - 图4

    带有输入框

    通过设置属性 show-input 可以显示数字输入框,配合使用,仅在单滑块模式下有效。

    1. <template>
    2. <Slider v-model="value8" show-input></Slider>
    3. </template>
    4. <script>
    5. export default {
    6. data () {
    7. return {
    8. value8: 25
    9. }
    10. }
    11. }
    12. </script>

    Slider 滑块 - 图5

    自定义提示

    Slider 会把当前值传给 tip-format,并在 Tooltip 中显示 tip-format 的返回值,若为 null,则隐藏 Tooltip。

    1. <template>
    2. <Slider v-model="value9" :tip-format="format"></Slider>
    3. <Slider v-model="value10" :tip-format="hideFormat"></Slider>
    4. </template>
    5. <script>
    6. export default {
    7. data () {
    8. return {
    9. value9: 25,
    10. value10: 25
    11. }
    12. },
    13. methods: {
    14. format (val) {
    15. return 'Progress: ' + val + '%';
    16. },
    17. hideFormat () {
    18. return null;
    19. }
    20. }
    21. }
    22. </script>

    API

    Slider props

    属性说明类型默认值
    value滑块选定的值,可以使用 v-model 双向绑定数据。普通模式下,数据格式为数字,在双滑块模式下,数据格式为长度是2的数组,且每项都为数字Number | Array0
    min最小值Number0
    max最大值Number100
    step步长,取值建议能被(max - min)整除Number1
    disabled是否禁用滑块Booleanfalse
    range是否开启双滑块模式Booleanfalse
    show-input是否显示数字输入框,仅在单滑块模式下有效Booleanfalse
    show-stops是否显示间断点,建议在 step 不密集时使用Booleanfalse
    show-tip提示的显示控制,可选值为 hover(悬停,默认)、always(总是可见)、never(不可见)Stringhover
    tip-formatSlider 会把当前值传给 tip-format,并在 Tooltip 中显示 tip-format 的返回值,若为 null,则隐藏 TooltipFunctionvalue
    input-size数字输入框的尺寸,可选值为largesmalldefault或者不填,仅在开启 show-input 时有效Stringdefault
    active-change 3.4.0同 InputNumber 的 active-changeBooleantrue

    Slider events

    事件名说明返回值
    on-change在松开滑动时触发,返回当前的选值,在滑动过程中不会触发value
    on-input滑动条数据变化时触发,返回当前的选值,在滑动过程中实时触发value