【picker】选择器组件说明

picker从底部弹起选择器组件

组件细节:

1) 该组件有五种类型,分别是普通选择器、多列选择器、时间选择器、日期选择器、省市区选择器。

2) 组件内必需包裹内容,不然无法弹出选项

<!-- 采用wxs提供数据源更直观显示 -->
<wxs module="picker">
  module.exports.items=['美国', '德国', '英国', '法国'];
</wxs>

<!-- 点击灰色的选择器无法弹出,因为其内部没有包裹内容 -->
<picker mode="selector" value="0" style="background:#ccc;width:300px;height:100px;" range="{{picker.items}}">
</picker>

<!-- 点击红色选择器内文字可以弹出 -->
<picker mode="selector" value="0" style="background:#f00;width:300px;height:100px;" range="{{picker.items}}"> <view>点我这一行可以弹出</view> </picker>

3) 五类选择器默认返回值不同(值也可以通过JS脚本进行更改):

    普通选择器:[Number] 当前选项的序号值,第一项序号为0,以次累推

    多列选择器:[Array] 元素值是每一列的选择项的序号值

    时间选择器:[String] 格式 hh:mm

    日期选择器:[String] 格式 YYYY-MM-DD

    省市区选择器: [Array] 格式 [ 省名称, 市名称, 区名称 ]

 

五种类型:

1、 普通选择器: mode="selector"

原型:

<picker
    mode="selector"
    value="[String]"
    range="[Array | Object Array]"
    range-key="[String]"
    disabled="[Boolean]"
    bindchange="[EventHandle]"
    bindcancel="[EventHandle]"    
>
</picker>

 

属性:

名称是否必需类型默认值说明
mode[String]selector固定值为selector表示是普通的选择器
range[Array | Object Array][]

初始化选择器选项的数据源

值类型为Array时,数组的每一个元素为选择器的选项列表

值类型为Object Array时,要求指明range-key,做为选项列表值

range[String] 

当 range 是一个 Object Array 时,通过 range-key 来指定 Object 中 key 的值作为选择器显示内容

value[String]空值

选择器默认值。

其值默认为选项的序号值(第一项序号为0,以次类推)

如果想自定义其值,可以通过JS设置此属性值

disabled[Boolean]false值为true表示禁用此组件
bindchange[EventHandle] 

选择组件选项时触发此事件,不管选择的项是否发生变化都会触发此事件,(即点击组件右侧“确认”按钮时就会触发此事件)

通过JS改变组件值时不触发此事件。

事件参数中返回组件值:event.detail = {value: value}

bindcancel[EventHandle] 

点击组件右侧“取消”按钮时就会触发此事件

 

2、多列选择器:mode="multiSelector"

原型:

<picker
    mode="multiSelector"  
    value="[Array]"
    range="[二维Array / 二维Object Array]"
    range-key="[String]"
    disabled="[boolean]"
    bindchange="[EventHandle]"
    bindcancel="[EventHandle]"
    bindcolumnchange="[EventHandle]"
>
</picker>

 

 属性:

名称是否必需类型默认值说明
mode[String]multiSelector固定值为multiSelector表示是多列选择器
range[Array | Object Array][]

初始化选择器选项的数据源

mode为 selector 或 multiSelector 时,range 有效。二维数组,长度表示多少列,数组的每项表示每列的数据,如[["a","b"], ["c","d"]]

range[String] 

当 range 是一个 二维Object Array 时,通过 range-key 来指定 Object 中 key 的值作为选择器显示内容

value[Array][]

选择器默认值。

如果想自定义其值,可以通过JS设置此属性值

value 每一项的值表示选择了 range 对应项中的第几个(下标从 0 开始)

disabled[Boolean]false值为true表示禁用此组件
bindchange[EventHandle] 

选择组件选项时触发此事件,不管选择的项是否发生变化都会触发此事件,(即点击组件右侧“确认”按钮时就会触发此事件)

通过JS改变组件值时不触发此事件。

事件参数中返回组件值:event.detail = {value: value}

bindcolumnchange[EventHandle] 

某一列的值改变时触发 columnchange 事件,event.detail = {column: column, value: value},column 的值表示改变了第几列(下标从0开始),value 的值表示变更值的下标

bindcancel[EventHandle] 

点击组件右侧“取消”按钮时就会触发此事件

 

3、时间选择器:mode="time"

原型:

<picker
    mode="time"
    value="[String]"
    start="[Date]"
    end="[Date]"
    disabled="[Boolean]"
    bindchange="[EventHandle]"
    bindcancel="[EventHandle]"
>
</picker>

 

属性:

名称是否必需类型默认值说明
mode[String]time固定值为time表示是普通的选择器
start[String] 

有效时间范围的开始,字符串格式为"hh:mm"

end[String] 

有效时间范围的结束,字符串格式为"hh:mm"

value[String] 

表示选中的时间,格式为"hh:mm"

disabled[Boolean]false值为true表示禁用此组件
bindchange[EventHandle] 

选择组件选项时触发此事件,不管选择的项是否发生变化都会触发此事件,(即点击组件右侧“确认”按钮时就会触发此事件)

通过JS改变组件值时不触发此事件。

事件参数中返回组件值:event.detail = {value: value}

bindcancel[EventHandle] 

点击组件右侧“取消”按钮时就会触发此事件

 

4、日期选择器:mode="date"

原型:

<picker
    mode="date"
    start="[String]"
    end="[String]"
    fields="[day | month | year]"
    value="[String]"
    disabled="[Boolean]"
    bindchange="[EventHandle]"
    bindcancel="[EventHandle]"
>
</picker>

 

属性:

名称是否必需类型默认值说明
mode[String]date固定值为date表示是普通的选择器
start[String] 

有效日期起始范围,格式为"YYYY-MM-DD"

end[String] 

有效日期结束范围,格式为"YYYY-MM-DD"

fields[day | month | year]day

有效值 year,month,day,表示选择器的粒度

值为day时,格式为: YYYY-MM-DD

值为month时,格式为: YYYY-MM

值为year时,格式为: YYYY

value[String]0

表示选中的日期,格式为"YYYY-MM-DD"

disabled[Boolean]false值为true表示禁用此组件
bindchange[EventHandle] 

选择组件选项时触发此事件,不管选择的项是否发生变化都会触发此事件,(即点击组件右侧“确认”按钮时就会触发此事件)

通过JS改变组件值时不触发此事件。

事件参数中返回组件值:event.detail = {value: value}

bindcancel[EventHandle] 

点击组件右侧“取消”按钮时就会触发此事件

 

5. 省市区选择器:mode="region" 

原型:

<picker
    mode="region"
    value="[Array]"
    custom-item="[String]"
    disabled="[Boolean]"
    bindchange="[EventHandle]"
    bindcancel="[EventHandle]"
>
</picker>

 

属性:

名称是否必需类型默认值说明
mode[String]regio固定值为regio表示是普通的选择器
value[Array][]

表示选中省市区,格式:[省, 市, 区]

custom-item[String] 可为每一列的顶部添加一个自定义的项(比如全部,或者请选择)
disabled[Boolean]false值为true表示禁用此组件
bindchange[EventHandle] 

选择组件选项时触发此事件,不管选择的项是否发生变化都会触发此事件,(即点击组件右侧“确认”按钮时就会触发此事件)

通过JS改变组件值时不触发此事件。

事件参数中返回组件值:event.detail = {value: value}

bindcancel[EventHandle] 

点击组件右侧“取消”按钮时就会触发此事件

 

注意:

1) 该选择器显示三列类型选项,分别是省、市、区。

2)该选择器的显示是[省份名称, 市名称, 区名称]。

3)省、市、区数据源由组件自动生成,无需提供。

 


更多专业前端知识,请上 【猿2048】www.mk2048.com
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vant(有赞前端团队开发的一套基于 Vue.js 的移动端组件库)中的 Picker 选择器是用来在移动端页面中方便地进行选项选择的组件Picker 选择器功能强大,可以实现多种选项的选择,包括日期、时间、地区等。通过设置不同的属性,可以自定义选择器的外观和行为。 Picker 选择器的基本用法是通过 v-model 绑定一个变量,使得选择器可以将选择的值实时更新到变量中。同时,可以通过设置 initial-value 属性来设置选择器的初始值。当用户选择了一个新的值后,v-model 绑定的变量会自动更新。 Picker 选择器的外观可以通过设置不同的属性来进行自定义。可以设置标题、取消按钮和确认按钮的文字,以及选择器的样式等。此外,可以通过设置 format 属性来自定义选中值的格式。 Picker 选择器的各种属性可以灵活使用,比如设置 show-toolbar 属性来决定是否显示选择器的工具栏,设置 columns 属性来设置选择器的选项等。通过组合这些属性的使用,可以实现各种不同的选择器效果。 总之,Vant 中的 Picker 选择器是一个非常实用和强大的组件,通过简单的配置和使用,可以方便地实现移动端页面中的选项选择功能。无论是日期选择还是其他类型的选项选择,Picker 选择器都可以满足我们的需求。它的灵活性和易用性使得我们的开发工作更加高效和便捷。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值