Slider 滑动选择器

该组件一般用于表单中,手动选择一个区间范围的场景。

平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序

基本使用

需要通过v-model绑定一个值,来初始化滑块的选择值(0到100之间),这个值是双向绑定的,您可以通过这个值,实时地得知内部的滑动结果。

  1. <template>
  2. <view class="wrap">
  3. <u-slider v-model="value"></u-slider>
  4. </view>
  5. </template>
  6. <script>
  7. export default {
  8. data() {
  9. return {
  10. value: 30
  11. }
  12. }
  13. }
  14. </script>
  15. <style scoped lang="scss">
  16. .wrap {
  17. padding: 30rpx;
  18. }
  19. </style>

设置最大和最小值

通过minmax,可以设置滑块所能选择的最大和最小值

  1. <u-slider v-model="value" min="30" max="80"></u-slider>

设置步进值

通过step参数设置步进值,这个步进值为每次跳变的值,具体表现请见示例。

提示

需要注意的是,这个step必须要被max值整除,否则会出现无法无法滑动到最大值的情况

  1. <u-slider v-model="value" step="20" min="30" max="100"></u-slider>

自定义按钮的内容和样式

通过设置use-slottrue,可以以传入slot的形式,替换默认的滑块按钮。

以下示例结合了value值,在按钮上实时显示选择的值:

  1. <template>
  2. <view class="wrap">
  3. <u-slider v-model="value" :use-slot="true">
  4. <!-- 这里外面需要多一层view,否则".badge-button"样式可能不生效 -->
  5. <view class="">
  6. <view class="badge-button">
  7. {{value}}
  8. </view>
  9. </view>
  10. </u-slider>
  11. </view>
  12. </template>
  13. <script>
  14. export default {
  15. data() {
  16. return {
  17. value: 30
  18. }
  19. }
  20. }
  21. </script>
  22. <style scoped lang="scss">
  23. .wrap {
  24. padding: 30rpx;
  25. }
  26. .badge-button {
  27. padding: 4rpx 6rpx;
  28. background-color: $u-type-error;
  29. color: #fff;
  30. border-radius: 10rpx;
  31. font-size: 22rpx;
  32. line-height: 1;
  33. }
  34. </style>

自定义滑动选择器整体的样式

  • 通过inactive-color配置底部滑动条背景颜色
  • 通过active-color配置底部选择部分的背景颜色
  • 通过block-width配置滑块宽度(高等于宽)
  • 通过block-color配置滑动按钮按钮的颜色
  • 通过height配置滑块条高度,单位rpx

其他更多参数详见底部API

  1. <u-slider v-model="value" block-width="40" block-color="red"></u-slider>

API

Props

参数说明类型默认值可选值
value滑块选择值,通过v-model绑定String | Number0-
min可选的最小值(0-100之间)String | Number0-
max可选的最大值(0-100之间)String | Number100-
step选择的步长String | Number1-
block-width滑动按钮的宽度(高等于宽),单位rpxString | Number30-
step选择的步长String | Number1-
height滑动选择条的高度,单位rpxString | Number6-
inactive-color滑动选择条的底部背景颜色String#c0c4cc-
active-color底部选择部分的背景颜色String#2979ff-
block-color滑块颜色String#ffffff-
block-style给滑块按钮自定义样式,对象形式Object--
disabled是否禁用滑块Booleanfalsetrue
use-slot是否使用slot传入自定义滑块Booleanfalsetrue

Events

事件名说明回调参数
start触发滑块移动-
moving正在滑动中-
end滑动结束-