Skip to content

Slider 滑块

介绍

滑动输入条,用于在给定的范围内选择一个值。

基础用法

通过 v-model 绑定滑块的值。

html
<vd-slider v-model="value" />
ts
const value = ref(0);

指定选择范围

通过 minmax 属性指定选择范围。

html
<vd-slider v-model="value" :min="0" :max="100" />
ts
const value = ref(0);

双滑块模式

通过 range 属性开启双滑块模式,在 双滑块模式v-model 为数组格式。

html
<vd-slider v-model="values" :range="true" />
ts
const values = ref([0, 100]);

指定步长

通过 step 属性指定步长。

html
<vd-slider v-model="value" :step="10" />
ts
const value = ref(0);

自定义激活色

通过 color 属性自定义激活色。

html
<vd-slider v-model="value" :color="'#ee0a24'" />
ts
const value = ref(0);

展示限制

通过 show-limit 属性展示选择范围。

html
<vd-slider v-model="value" :show-limit="true" />
ts
const value = ref(0);

展示文本标签

通过 show-text 属性展示文本标签。

html
<vd-slider v-model="value" label-type="text" />

<!-- 标签常显 -->
<vd-slider v-model="value" label-type="text" label-trigger="always" />
ts
const value = ref(0);

自定义文案、颜色

通过插槽自定义文案,通过 color 属性自定义颜色。

html
<vd-slider
  v-model="value"
  min="1"
  max="4"
  show-limit
  label-trigger="always"
  :color="curValue"
>
  <template #label="{ value }">{{ labels[value] }}风险</template>
  <template #min="{ min, max, value }">{{ labels[min] }}</template>
  <template #max="{ min, max, value }">{{ labels[max] }}</template>
</vd-slider>
ts
const value = ref(1);

const labels: any = {
  1: '一般',
  2: '较大',
  3: '重大',
  4: '特大',
};

const colors: any = {
  1: '#1989fa',
  2: '#ff976a',
  3: '#ffff00',
  4: '#ee0a24',
};

const curValue = computed(() => {
  return colors[value.value];
});

只读状态

通过 readonly 属性禁用滑块。

html
<vd-slider v-model="value" :readonly="true" />
ts
const value = ref(0);

禁用状态

通过 disabled 属性禁用滑块。

html
<vd-slider v-model="value" :disabled="true" />
ts
const value = ref(0);

API

Props

参数说明类型默认值
v-model当前值string | number | (string | number)[]-
min最小值string | number0
max最大值string | number100
step步长string | number1
duration动画时长string | number300
label-type标签类型text | bubble | nonebubble
label-trigger标签触发方式touch | alwaystouch
label-position标签位置top | bottomtop
show-limit是否展示限制范围标签booleanfalse
range是否双滑块模式booleanfalse
height进度条高度string | number2
color激活色string-
inactive-color未激活色string-
readonly是否只读booleanfalse
disabled是否禁用booleanfalse

代替原始 Props

参数说明类型默认值
custom-id根节点idstring-
custom-class根节点类名ClassValue-
custom-style根节点样式StyleValue-

Events

事件名说明回调参数
click点击时触发MouseEvent
change改变时触发number | number[]

Slots

名称说明
min最小限制
max最大限制
thumb滑块
label标签

赣ICP备2025061025号-1