Skip to content

Slider 滑块

介绍

滑块组件用于在给定的范围内选择一个值,支持自定义范围、步长、样式等。

导入

js
import Slider from '@/components/form/Slider.vue';

使用方法

基础用法

滑块组件的基础用法,通过 v-model 绑定值。

vue
<template>
  <FlexCol :gap="20">
    <Slider v-model:modelValue="value" />
    <text>当前值:{{ Math.floor(value) }}</text>
  </FlexCol>
</template>

<script setup lang="ts">
import Slider from '@/components/form/Slider.vue';
import FlexCol from '@/components/layout/FlexCol.vue';
import { ref } from 'vue';

const value = ref(50);
</script>

指定范围

通过 minmax 属性设置滑块的取值范围。

vue
<template>
  <FlexCol :gap="20">
    <Slider v-model="value" :min="-50" :max="50" />
    <text>当前值:{{ Math.floor(value) }}</text>
  </FlexCol>
</template>

禁用

通过 disabled 属性禁用滑块。

vue
<template>
  <Slider v-model="value" :disabled="true" />
</template>

指定步长

通过 step 属性设置滑块的步长。

vue
<template>
  <FlexCol :gap="20">
    <Slider v-model="value" :step="20" />
    <text>当前值:{{ value }}</text>
  </FlexCol>
</template>

自定义样式

通过相关属性自定义滑块的样式。

vue
<template>
  <Slider 
    v-model="value" 
    activeColor="success"
    inactiveColor="grey"
    :size="10"
    :dotStyle="{
      backgroundColor: '#5fa',
      borderRadius: 0,
    }" />
</template>

API 参考

Slider

滑块组件,用于在给定范围内选择值。

Props

名称说明类型必填默认值
modelValue滑块的值number50
direction滑动方向'horizontal' | 'vertical''horizontal'
activeColor主颜色stringprimary
inactiveColor反色stringbackground.switch
size条的大小string | number6
dotColor开关点的颜色stringwhite
dotSize开关大小number40
dotStyle点的自定义样式ViewStyle-
disabled是否禁用booleanfalse
min最小值number0
max最大值number100
step步长number-
innerStyle内部样式ViewStyle-

Events

名称说明参数
update:modelValue值更新事件number

主题变量

名称类型默认值说明
SliderActiveColorstringprimary滑块激活颜色
SliderInactiveColorstringbackground.switch滑块非激活颜色
SliderDotColorstringwhite滑块圆点颜色
SliderDotSizenumber40滑块圆点大小
SliderSizenumber6滑块条大小
SliderDotShadowstringrgba(0, 0, 0, 0.1) 2px 2px 8px 2px滑块圆点阴影