微信小程序picker组件两列关联使用方式
更新时间:2020-10-28 09:07 文章类目:其它教程 文章来源:开源之家 作者:开源之家 浏览:192 次
在使用微信小程序picker组件时候,可以设置属性 mode = multiSelector 意为多列选择,关联选择,当第一列发生改变时侯,第二列甚至第三列发生相应的改变。但是官方文档上给的只有三列数据关联改变,没有两列改变得,我在写的时候琢磨了很久官方文档,于是写下此篇文档,作为总结。
结构文件
<picker mode="multiSelector" bindchange="PickerChange"bindcolumnchange="PickerColumnChange" value="{{multiIndex}}" range="{{multiArray}}"> <view class="picker"> {{multiArray[0][multiIndex[0]]}},{{multiArray[1][multiIndex[1]]}} </view> </picker>
bindcolumnchange 为每一列改变时候触发的函数,参数为 e ,
bindchange 为最终选中之后触发函数,参数为 e,
range 为绑定数组
js文件
data: { multiArray: [['飞禽', '走兽'], ['鹰', '鸽子', '麻雀', '鹦鹉']], multiIndex: [0, 0], arrColumn0: ['鹰', '鸽子', '麻雀', '鹦鹉'], arrColumn1: ['兔子', '狮子', '猎狗'] }, PickerChange(e) { var value = e.detail.value this.setData({ multiIndex: value }) console.log(this.data.multiArray[0][value[0]], this.data.multiArray[1][value[1]]) }, PickerColumnChange(e) { // 先定义数据,数组里面两个数组,意为两列,当第一列发生改变时侯,给数组重新赋值 var obj = e.detail var multiArray = this.data.multiArray if (obj.column == 0 && obj.value == 0) { multiArray[1] = this.data.arrColumn0 } if (obj.column == 0 && obj.value == 1) { multiArray[1] = this.data.arrColumn1 } this.setData({ multiArray: multiArray }) },
设计思路
multiArray 为弹出层显示数据,为一个数组,数组里面有几个数组,就是显示几列,我这是两个数组,即为显示两列,
multiIndex 为最终选中得数据索引,是函数 PickerChange 参数 e 里面包含得数组
e.detail.value 有两列,即会返回 [1,2] , 前面得 1 表示为,最终选择第一列得数组中索引为 1 对应的那个值。后边得 2 表示为,最终选中得为第二列数据中索引为 2 对应的值
arrColumn0 和 arrColumn1,是我定义得数组,可以从后台直接获取,但是一定要在 picker 组件弹出来之前,附上值。 multiArray 同理也可以这样赋值。
PickerColumnChange 函数,当每一列改变时候都会触发这个函数,
到此这篇关于微信小程序picker组件两列关联使用方式的文章就介绍到这了
转载请注明来源: 微信小程序picker组件两列关联使用方式
本文永久链接地址: https://www.enboo.cn/CMSjiaocheng/qitajiaocheng/22061.html
郑重声明:
本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。
若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。 我们不承担任何技术及版权问题,且不对任何资源负法律责任。
如无法链接失效或侵犯版权,请给我们来信:2225329841@qq.com
- 在函数内部可以通过什么关键字来定义全局变量?
- three.js 制作动态二维码的示例代码
- docker服务无法正常启动怎么办
- 客户端使用FileZilla连接ftp服务器过程图解
- 基于php+MySql实现学生信息管理系统实例
- CSS代码检查工具stylelint的使用方法详解
- WordPress集成有字库字体插件美化文章标题和内容
- 网猴P鱼系列之修改P鱼名称/炮数/难度
- 嘁,都2020了,你咋还在单纯的使用if-else
- Laravel相关的一些故障解决
- Python3如何使用range函数替代xrange函数
- phpmyadmin快速备份与还原数据库的方法
- Python批量获取并保存手机号归属地和运营商的示例
- php如何使用PHPAnalysis提取关键字中文分词
- nginx 多个location转发任意请求或访问静态资源文件的实现
- 最新文章
- 热门文章
-
- 微信开发者工具Error: unable to verify the first certificate
- Element PageHeader页头的使用方法
- 帝国cms和织梦cms哪个好用?优缺点介绍
- wps表格下拉数字无法递增怎么办?
- 关于android studio升级4.1 某些插件使用不了的问题(Mac)
- Tomcat启动springboot项目war包报错:启动子级时出错的问题
- 解决IDEA的maven项目中没有新建Servlet文件的选项问题
- Laravel中如何轻松容易的输出完整的SQL语句
- 在函数内部可以通过什么关键字来定义全局变量?
- 基于php+MySql实现学生信息管理系统实例