欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

微信小程序picker组件简单用法示例【附demo源码下载】

程序员文章站 2022-05-09 08:25:57
本文实例讲述了微信小程序picker组件简单用法。分享给大家供大家参考,具体如下: picker滚动选择器,现支持三种选择器,通过mode来区分,分别是普通选择器(mod...

本文实例讲述了微信小程序picker组件简单用法。分享给大家供大家参考,具体如下:

picker滚动选择器,现支持三种选择器,通过mode来区分,分别是普通选择器(mode=selector),时间选择器(mode=time),日期选择器(mode=date),默认是普通选择器。

具体功能说明如下:

普通选择器:mode=selector

属性名 类型 默认值 说明
range array [] mode为selector时,range有效
value number 0 mode为selector时,是数字,表示选择了range中的第几个,从0开始。
bindchange eventhandle   value改变时触发change事件,event.detail= { value:value}

时间选择器:mode=time

属性名 类型 默认值 说明
value string   表示选中的时间,格式为"hh:mm"
 start string   表示有效时间范围的开始,字符串格式为"hh:mm"
 end string   表示有效时间范围的结束,字符串格式为"hh:mm"
 bindchange eventhandle   value改变时触发change事件,event.detail= { value:value}

日期选择器:mode=date

属性名 类型 默认值 说明
value string 0 表示选中的日期,格式为"yyyy-mm-dd"
start string   表示有效日期范围的开始,字符串格式为"yyyy-mm-dd"
end string   表示有效日期范围的结束,字符串格式为"yyyy-mm-dd"
fields string day 有效值year,month,day,表示选择器的粒度
bindchange eventhandle   value改变时触发change事件,event.detail= { value:value}

示例代码如下:

picker.wxml:

<view class="section">
 <view class="section__title">地区选择器</view>
 <picker bindchange="bindpickerchange" value="{{index}}" range="{{array}}">
 <view class="picker">
  当前选择:{{array[index]}}
 </view>
 </picker>
</view>
<view class="section">
 <view class="section__title">时间选择器</view>
 <picker mode="time" value="{{time}}" start="09:01" end="21:01" bindchange="bindtimechange">
 <view class="picker">
  当前选择: {{time}}
 </view>
 </picker>
</view>
<view class="section">
 <view class="section__title">日期选择器</view>
 <picker mode="date" value="{{date}}" start="2015-09-01" end="2017-09-01" bindchange="binddatechange">
 <view class="picker">
  当前选择: {{date}}
 </view>
 </picker>
</view>

picker.js:

page({
 data: {
 array: ['美国', '中国', '巴西', '日本'],
 index: 0,
 date: '2016-09-01',
 time: '12:01'
 },
 bindpickerchange: function(e) {
 console.log('picker发送选择改变,携带值为', e.detail.value)
 this.setdata({
  index: e.detail.value
 })
 },
 binddatechange: function(e) {
 this.setdata({
  date: e.detail.value
 })
 },
 bindtimechange: function(e) {
 this.setdata({
  time: e.detail.value
 })
 }
})

简单样式布局picker.wxss:

.section {
 display: flex;
 flex-direction: column;
 padding: 20rpx 0rpx;
 color: #333;
}
.section__title{
 font-size: 40rpx;
 margin: 10rpx 0rpx;
}

运行效果:

微信小程序picker组件简单用法示例【附demo源码下载】

附:demo源码点击此处本站下载

希望本文所述对大家微信小程序开发有所帮助。