Slider 滑块

引入

  1. import Vue from 'vue';
  2. import { Slider } from 'vant';
  3. Vue.use(Slider);

代码演示

基础用法

  1. <van-slider v-model="value" @change="onChange" />
  1. import { Toast } from 'vant';
  2. export default {
  3. data() {
  4. return {
  5. value: 50,
  6. };
  7. },
  8. methods: {
  9. onChange(value) {
  10. Toast('当前值:' + value);
  11. },
  12. },
  13. };

指定选择范围

  1. <van-slider v-model="value" :min="-50" :max="50" />

禁用

  1. <van-slider v-model="value" disabled />

指定步长

  1. <van-slider v-model="value" :step="10" />

自定义样式

  1. <van-slider v-model="value" bar-height="4px" active-color="#ee0a24" />

自定义按钮

  1. <van-slider v-model="value" active-color="#ee0a24">
  2. <template #button>
  3. <div class="custom-button">
  4. {{ value }}
  5. </div>
  6. </template>
  7. </van-slider>
  8. <style>
  9. .custom-button {
  10. width: 26px;
  11. color: #fff;
  12. font-size: 10px;
  13. line-height: 18px;
  14. text-align: center;
  15. background-color: #ee0a24;
  16. border-radius: 100px;
  17. }
  18. </style>

垂直方向

Slider 垂直展示时,高度为 100% 父元素高度

  1. <div :style="{ height: '100px' }">
  2. <van-slider v-model="value" vertical />
  3. </div>

API

Props

参数说明类型默认值
value当前进度百分比number0
max最大值number | string100
min最小值number | string0
step步长number | string1
bar-height进度条高度,默认单位为pxnumber | string2px
button-size v2.4.5滑块按钮大小,默认单位为pxnumber | string24px
active-color进度条激活态颜色string#1989fa
inactive-color进度条非激活态颜色string#e5e5e5
disabled是否禁用滑块booleanfalse
vertical是否垂直展示booleanfalse

Events

事件名说明回调参数
input进度变化时实时触发value: 当前进度
change进度变化且结束拖动后触发value: 当前进度
drag-start开始拖动时触发-
drag-end结束拖动时触发-

Slots

名称说明
button自定义滑动按钮

Slider 滑块 - 图1