实现样子
提示:效果可以自己自定义,自己将文字样式更改为自己项目属性即可
实现达到方法
1、左边为最低价,右边为最高价格,可以拖动左边最低价选择价格。拖动右边为最高价。
2、当两个价格重合时,继续拖动,向左边,左边最低价会跟着变低,直到为边端,反之右边最高价会跟着变高。
3、输入相应的标尺会显示不同价格尺度
4、颜色、拖动模块都可以自定义
5、价格拖动已经封装成组件,简单调用即可实现相应的方法
建议:建议不在组件拖动频繁调用setdata赋值,会导致性能增高
实现步骤
步骤一:下载资源,在组件引用组件(不作过多介绍,资源在结尾下载)
步骤二:在页面调用组件
json:{"usingComponents": {"range-slider": "/components/range/range-slider"}
}js:
const app = getApp()
Page({data: {minValue: 0,maxValue: 20,rangeValues: [0, 20]},onLoad: function() {},onRangeChange: function(e) {this.setData({rangeValues: [Math.round(e.detail.minValue), Math.round(e.detail.maxValue)],});},onTest: function() {this.setData({rangeValues: [0, 20]});}
})wxml:
<view style="width:600rpx"><range-slider width='600' height='100' block-size='50' min='0' max='20' values='{{rangeValues}}' bind:rangechange='onRangeChange'><view slot='minBlock' class='range-slider-block'></view><view slot='maxBlock' class='range-slider-block'></view></range-slider></view>css:
.container {display: flex;flex-direction: column;align-items: center;margin-top: 230rpx;
}.range-slider-block {border-radius: 15rpx;width: 100%;height: 100%;background-color: #fc4029;box-shadow: 0px 2rpx 14rpx 0px rgba(72,126,255,0.35);color:#fff;font-size: 17rpx;text-align: center;line-height: 29rpx;
}.range-text {font-size: 18px;
}
小结
现在很多网上流行拖动来选择价格,方便快捷高效的选择价格,已经慢慢摒弃传统的固定选择价格。组件已经优化,兼容小屏和大屏幕的手机或者平板
喜欢的小伙伴可以下载。资源下载