• Slider 滑块
    • 基础用法
    • 离散值
    • 带有输入框
    • 范围选择
    • 竖向模式
    • 展示标记
    • Attributes
    • Events

    Slider 滑块

    通过拖动滑块在一个固定区间内进行选择

    基础用法

    在拖动滑块时,显示当前值

    Slider 滑块 - 图1

    通过设置绑定值自定义滑块的初始值

    1. <template>
    2. <div class="block">
    3. <span class="demonstration">默认</span>
    4. <el-slider v-model="value1"></el-slider>
    5. </div>
    6. <div class="block">
    7. <span class="demonstration">自定义初始值</span>
    8. <el-slider v-model="value2"></el-slider>
    9. </div>
    10. <div class="block">
    11. <span class="demonstration">隐藏 Tooltip</span>
    12. <el-slider v-model="value3" :show-tooltip="false"></el-slider>
    13. </div>
    14. <div class="block">
    15. <span class="demonstration">格式化 Tooltip</span>
    16. <el-slider v-model="value4" :format-tooltip="formatTooltip"></el-slider>
    17. </div>
    18. <div class="block">
    19. <span class="demonstration">禁用</span>
    20. <el-slider v-model="value5" disabled></el-slider>
    21. </div>
    22. </template>
    23. <script>
    24. export default {
    25. data() {
    26. return {
    27. value1: 0,
    28. value2: 50,
    29. value3: 36,
    30. value4: 48,
    31. value5: 42
    32. }
    33. },
    34. methods: {
    35. formatTooltip(val) {
    36. return val / 100;
    37. }
    38. }
    39. }
    40. </script>

    离散值

    选项可以是离散的

    Slider 滑块 - 图2

    改变step的值可以改变步长,通过设置show-stops属性可以显示间断点

    1. <template>
    2. <div class="block">
    3. <span class="demonstration">不显示间断点</span>
    4. <el-slider
    5. v-model="value1"
    6. :step="10">
    7. </el-slider>
    8. </div>
    9. <div class="block">
    10. <span class="demonstration">显示间断点</span>
    11. <el-slider
    12. v-model="value2"
    13. :step="10"
    14. show-stops>
    15. </el-slider>
    16. </div>
    17. </template>
    18. <script>
    19. export default {
    20. data() {
    21. return {
    22. value1: 0,
    23. value2: 0
    24. }
    25. }
    26. }
    27. </script>

    带有输入框

    通过输入框设置精确数值

    Slider 滑块 - 图3

    设置show-input属性会在右侧显示一个输入框

    1. <template>
    2. <div class="block">
    3. <el-slider
    4. v-model="value"
    5. show-input>
    6. </el-slider>
    7. </div>
    8. </template>
    9. <script>
    10. export default {
    11. data() {
    12. return {
    13. value: 0
    14. }
    15. }
    16. }
    17. </script>

    范围选择

    支持选择某一数值范围

    Slider 滑块 - 图4

    设置range即可开启范围选择,此时绑定值是一个数组,其元素分别为最小边界值和最大边界值

    1. <template>
    2. <div class="block">
    3. <el-slider
    4. v-model="value"
    5. range
    6. show-stops
    7. :max="10">
    8. </el-slider>
    9. </div>
    10. </template>
    11. <script>
    12. export default {
    13. data() {
    14. return {
    15. value: [4, 8]
    16. }
    17. }
    18. }
    19. </script>

    竖向模式

    Slider 滑块 - 图5

    设置vertical可使 Slider 变成竖向模式,此时必须设置高度height属性

    1. <template>
    2. <div class="block">
    3. <el-slider
    4. v-model="value"
    5. vertical
    6. height="200px">
    7. </el-slider>
    8. </div>
    9. </template>
    10. <script>
    11. export default {
    12. data() {
    13. return {
    14. value: 0
    15. }
    16. }
    17. }
    18. </script>

    展示标记

    Slider 滑块 - 图6

    设置 marks 属性可以展示标记

    1. <template>
    2. <div class="block">
    3. <el-slider
    4. v-model="value"
    5. range
    6. :marks="marks">
    7. </el-slider>
    8. </div>
    9. </template>
    10. <script>
    11. export default {
    12. data() {
    13. return {
    14. value: [30, 60],
    15. marks: {
    16. 0: '0°C',
    17. 8: '8°C',
    18. 37: '37°C',
    19. 50: {
    20. style: {
    21. color: '#1989FA'
    22. },
    23. label: this.$createElement('strong', '50%')
    24. }
    25. }
    26. }
    27. }
    28. }
    29. </script>

    Attributes

    参数说明类型可选值默认值
    value / v-model绑定值number0
    min最小值number0
    max最大值number100
    disabled是否禁用booleanfalse
    step步长number1
    show-input是否显示输入框,仅在非范围选择时有效booleanfalse
    show-input-controls在显示输入框的情况下,是否显示输入框的控制按钮booleantrue
    input-size输入框的尺寸stringlarge / medium / small / minismall
    show-stops是否显示间断点booleanfalse
    show-tooltip是否显示 tooltipbooleantrue
    format-tooltip格式化 tooltip messagefunction(value)
    range是否为范围选择booleanfalse
    vertical是否竖向模式booleanfalse
    heightSlider 高度,竖向模式时必填string
    label屏幕阅读器标签string
    debounce输入时的去抖延迟,毫秒,仅在show-input等于true时有效number300
    tooltip-classtooltip 的自定义类名string
    marks标记, key 的类型必须为 number 且取值在闭区间 [min, max] 内,每个标记可以单独设置样式object

    Events

    事件名称说明回调参数
    change值改变时触发(使用鼠标拖曳时,只在松开鼠标后触发)改变后的值