Skip to content

Slider 滑块

介绍

滑块选择器,用于在给定的范围内选择一个值,支持自定义步长、颜色和尺寸。

引入

typescript
import { TnSlider } from "@tuniao/tn-ui";

代码演示

基础用法

通过 modelValue 绑定当前值,默认范围为 0 ~ 100

基础用法

点我查看代码
typescript
@Local sliderValue: number = 30;

TnSlider({
  modelValue: this.sliderValue,
  onChange: (value: number) => {
    this.sliderValue = value;
  },
})

步长

通过 step 属性设置滑块的步长,每次移动的最小单位。

步长

点我查看代码
typescript
@Local sliderValue: number = 50;

TnSlider({
  modelValue: this.sliderValue,
  step: 10,
  min: 0,
  max: 200,
  onChange: (value: number) => {
    this.sliderValue = value;
  },
})

自定义颜色

通过 activeColor 设置已选择部分的颜色,inactiveColor 设置未选择部分的颜色。

自定义颜色

点我查看代码
typescript
@Local sliderValue: number = 40;

TnSlider({
  modelValue: this.sliderValue,
  activeColor: "success",
  onChange: (value: number) => {
    this.sliderValue = value;
  },
})

自定义尺寸

通过 sliderBarSize 设置滑块按钮大小,sliderHeight 设置轨道高度。

点我查看代码
typescript
@Local sliderValue: number = 40;

Column({ space: 20 }) {
  // 大滑块
  TnSlider({
    modelValue: this.sliderValue,
    sliderBarSize: 28,
    sliderHeight: 8,
    onChange: (value: number) => {
      this.sliderValue = value;
    },
  })
  // 小滑块
  TnSlider({
    modelValue: this.sliderValue,
    sliderBarSize: 16,
    sliderHeight: 2,
    onChange: (value: number) => {
      this.sliderValue = value;
    },
  })
}

禁用状态

通过 disabled 属性禁用滑块。

禁用状态

点我查看代码
typescript
TnSlider({
  modelValue: 50,
  disabled: true,
})

API

Props

参数说明类型默认值
modelValue当前值number0
min最小值number0
max最大值number100
step步长number1
disabled是否禁用booleanfalse
activeColor已选择部分的颜色string-
inactiveColor未选择部分的颜色string-
sliderBarSize滑块按钮大小,单位 vpnumber-
sliderHeight轨道高度,单位 vpnumber-

Events

事件名说明回调参数
onChange松手后触发,确认最终值(value: number) => void
onChanging拖动过程中实时触发(value: number) => void