Skip to content

slidercomponent Slider ​

Basic Usage ​

<template>
  <div>
    <b-slider v-model="value1"></b-slider>
    <div class="p10"></div>
    <b-slider v-model="value2" range></b-slider>
    <div class="p10"></div>
    <b-slider v-model="value3" range disabled></b-slider>
  </div>
</template>

<script setup lang="ts">
import { ref } from 'vue'

const value1 = ref(25)
const value2 = ref([20, 60])
const value3 = ref([30, 40])
</script>

Step and Stops ​

<template>
  <div>
    <b-slider v-model="value4" :step="10"></b-slider>
    <div class="p10"></div>
    <b-slider v-model="value5" :step="10" show-stops></b-slider>
    <div class="p10"></div>
    <b-slider v-model="value6" :step="10" range></b-slider>
    <div class="p10"></div>
    <b-slider v-model="value7" :step="10" range show-stops></b-slider>
  </div>
</template>

<script setup lang="ts">
import { ref } from 'vue'

const value4 = ref(30)
const value5 = ref(35)
const value6 = ref([20, 40])
const value7 = ref([30, 50])
</script>

input ​

<template>
  <div>
    <b-slider v-model="value1" show-input></b-slider>
    <div class="p10"></div>
    <b-slider v-model="value2" :format-tooltip="format"></b-slider>
  </div>
</template>

<script setup lang="ts">
import { ref } from 'vue'

const value1 = ref(25)
const value2 = ref(35)

function format(val) {
  return 'Progress: ' + val + '%'
}
</script>

With Marks ​

0°C
12°C
36°C
88°C
<template>
  <div>
    <b-slider v-model="value1" range :marks="marks"></b-slider>
  </div>
</template>

<script setup lang="ts">
import { ref, h } from 'vue'

const value1 = ref([15, 65])
const marks = {
  0: '0°C',
  12: '12°C',
  36: '36°C',
  88: {
    style: {
      color: '#ff0000'
    },
    label: h('strong', '88°C')
  }
}
</script>

Props ​

ParameterDescriptionTypeOptionsDefault
value / v-modelBound valuenumber—0
minMinimum valuenumber—0
maxMaximum valuenumber—100
disabledDisable dboolean—false
stepStep sizenumber—1
show-inputWhether to show input, only effective in non-range modeboolean—false
show-input-controlsWhether to show input control buttons when input is displayedboolean—true
input-sizeInput sizestringlarge / default / small / minismall
show-stopsWhether to show stopsboolean—false
show-tooltipWhether to show tooltipboolean—true
format-tooltipFormat tooltip messagefunction(value)——
rangeWhether to use range selectionboolean—false
verticalWhether to use vertical modeboolean—false
heightSlider height, required in vertical modestring——
labelScreen reader labelstring——
debounceDebounce delay on input, in milliseconds, only when show-input is truenumber—300
tooltip-classCustom class name for tooltipstring——
marksMarks, key type must be number and value must be within the closed interval [min, max], each mark can have individual stylesobject——

Events ​

Event NameDescriptionCallback Parameters
changeTriggers when value changes (when dragging with mouse, triggers only after releasing the mouse)Changed value
inputTriggers when data changes (when dragging with mouse, triggers in real time during the drag)Changed value