微信小程序组件解读和分析:十二、picker滚动选择器

picker滚动选择器组件说明:

picker:

滚动选择器,现支持三种选择器,通过mode属性来区分,

分别是普通选择器(mode = selector),时间选择器(mode = time),日期选择器(mode = date),

默认是普通选择器。


picker滚动选择器示例代码运行效果如下:

 




下面是WXML代码:

[XML]  纯文本查看 复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
< view class = "page" >
   < view class = "page__hd" >
     < text class = "page__title" >picker</ text >
     < text class = "page__desc" >选择器</ text >
   </ view >
   < view class = "page__bd" >
     < 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 >
   </ view >
</ view >



下面是JS代码:

[JavaScript]  纯文本查看 复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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
     })
   }
})



下面是WXSS代码:

[CSS]  纯文本查看 复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
.page {
     min-height : 100% ;
     flex: 1 ;
     background-color : #FBF9FE ;
     font-size : 32 rpx;
     font-family : -apple-system-font, Helvetica Neue, Helvetica , sans-serif ;
     overflow : hidden ;
}
.page__hd{
     padding : 50 rpx 50 rpx 100 rpx 50 rpx;
     text-align : center ;
}
.page__title{
     display : inline- block ;
     padding : 20 rpx 40 rpx;
     font-size : 32 rpx;
     color : #AAAAAA ;
     border-bottom : 1px solid #CCCCCC ;
}
.page__desc{
     display : none ;
     margin-top : 20 rpx;
     font-size : 26 rpx;
     color : #BBBBBB ;
}
.picker{
   padding : 26 rpx;
   background-color : #FFFFFF ;
}
.section{
     margin-bottom : 80 rpx;
}
.section__title{
     margin-bottom : 16 rpx;
     padding-left : 30 rpx;
     padding-right : 30 rpx;
}



picker滚动选择器的主要属性:

普通选择器:(mode = selector)

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

 

时间选择器:(mode = time) 

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

 

日期选择器:(mode = date)

 

属性名
类型
默认值
说明
valueString0表示选中的日期,格式为”YYYY-MM-DD”
startString 表示有效日期范围的开始,字符串格式为”YYYY-MM-DD”
endString 表示有效日期范围的结束,字符串格式为”YYYY-MM-DD”
fieldsStringday有效值year,month,day,表示选择器的粒度
bindchangeEventHandle value改变时触发change事件,event.detail = {value: value}

点击查看原文

转载于:https://www.cnblogs.com/johnchai/p/6637480.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值