Skip to content

Slider 滑动选择器 ​

uvx-slider 基于 uni-app x 原生 slider 选择范围内数值,支持范围、步长、颜色、数值显示和拖动事件。

平台兼容性 ​

AndroidiOS鸿蒙H5微信
3.9+4.11+4.61+4.0+4.41+

平台能力 ​

能力AndroidiOS鸿蒙H5微信
范围、步长、禁用和双向绑定√√√√√
轨道、滑块颜色和尺寸√√√√√
拖动中与拖动结束事件√√√√√
show-value 文字颜色适配×××√√

使用须知

  1. value 转为数字后不等于 0 时优先于 model-value;推荐使用 v-model,不要同时传非零 value。
  2. max 小于等于 min 时按 min 处理;step 小于等于 0 时回退为 1。
  3. block-size 被限制在 12-28。
  4. 拖动过程中触发 input、changing 和 update:modelValue;拖动结束触发 input、change 和 update:modelValue。
  5. 源码注明 show-value 的文字颜色在 App 端无效。

基础用法 ​

vue
<template>
   <uvx-slider v-model="value"></uvx-slider>
</template>

<script lang="uts" setup>
const value = ref<number>(50);
</script>

自定义范围 ​

vue
<uvx-slider :model-value="25" :min="0" :max="50"></uvx-slider>

指定步长 ​

vue
<uvx-slider :model-value="50" :step="5" :show-value="true"></uvx-slider>

自定义样式 ​

vue
<uvx-slider
   v-model="value"
   active-color="#5ac725"
   background-color="#c8c9cc"
   block-color="#ffffff"
   :block-size="24"
></uvx-slider>
vue
<script lang="uts" setup>
const value = ref<number>(50);

const handleChanging = (nextValue: number): void => {
   value.value = nextValue;
};

const handleChange = (nextValue: number): void => {
   value.value = nextValue;
};
</script>

监听拖动 ​

vue
<uvx-slider
   v-model="value"
   @changing="handleChanging"
   @change="handleChange"
></uvx-slider>

API ​

Props ​

属性说明类型默认值平台
value兼容当前值,非零时优先于 model-valuestring | number0全部
model-value双向绑定值string | number0全部
min最小值string | number0全部
max最大值,不得小于等于最小值string | number100全部
step步长,必须大于 0string | number1全部
active-color已选择轨道颜色string""全部
background-color未选择轨道颜色string""全部
block-size滑块尺寸,限制在 12-28string | number18全部
block-color滑块颜色string""全部
show-value是否显示当前值booleanfalse全部
disabled是否禁用booleanfalse全部
u-style根节点自定义样式,CSS 字符串string""全部
u-class追加到根节点的外部样式类string""全部

Events ​

事件说明参数平台
update:modelValue拖动中和拖动结束时更新绑定值value: number全部
input拖动中和拖动结束时触发value: number全部
changing拖动过程中触发value: number全部
change拖动结束时触发value: number全部

参考 ​

uvx-ui · uni-app x 组件库