微信小程序picker组件关于objectArray数据类型的绑定方法


Posted in Javascript onMarch 13, 2019

一、前言:

我发现很多的同学都在抱怨说微信小程序的picker的mode = selector/mode = multiSelector 无法实现Object Array数据类型的绑定,其实很多人就想要和html中的下拉选中的通过选中获取vaule中的属性值,其实认真查看微信picker组件详解的都知道其实是可以实现的,只不过微信给的实例是array的实例而object array实例是留给大家去动手的哟,在这里我主要介绍的mode=selector 的objectArray实现。

二、介绍:

 普通选择器:mode = selector

属性名 类型 默认值 说明
range Array / Object Array [] mode为 selector 或 multiSelector 时,range 有效
range-key String 当 range 是一个 Object Array 时,通过 range-key 来指定 Object 中 key 的值作为选择器显示内容
value Number 0 value 的值表示选择了 range 中的第几个(下标从 0 开始)
bindchange EventHandle value 改变时触发 change 事件,event.detail = {value: value}
disabled Boolean false 是否禁用

微信picker组件详解: https://developers.weixin.qq.com/miniprogram/dev/component/picker.html?search-key=picker

首先我的数据格式是:[{ name: '服务质量', id: 20 }, { name: '服务品质', id: 24 }, { name: '服务速度', id: 25}]

.wxml页代码:

//其中range为数据源,value为下标索引,bindchange为change改变事件
<picker range='{{type}}' value='{{idx}}' bindchange='Change' range-key="name" data-id='{{type[index].id}}'>
<view class='picker'>{{type[index].name}}</view>
</picker>

.js代码:

/**
  * 页面的初始数据
  */
 data: {
  type: [{ name: '服务质量', id: 20 }, { name: '服务品质', id: 24 }, { name: '服务速度', id: 25}],
  index: 0,//索引
 },
 Change: function (e) {

  console.log('picker发送选择改变,索引值为', e.detail.value)
  console.log("选中的id值:"+e.target.dataset.id)
  console.log(e);
  this.setData({

   index: e.detail.value

  })

 }

页面效果和输出结果:

微信小程序picker组件关于objectArray数据类型的绑定方法

微信小程序picker组件关于objectArray数据类型的绑定方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使用TextRange获取输入框中光标的位置的代码
Mar 08 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
Nov 26 Javascript
使用jquery修改表单的提交地址基本思路
Jun 04 Javascript
JS不用正则验证输入的字符串是否为空(包含空格)的实现代码
Jun 14 Javascript
在线引用最新jquery文件的实现方法
Aug 26 Javascript
在Docker快速部署Node.js应用的详细步骤
Sep 02 Javascript
js仿微信语音播放实现思路
Dec 12 Javascript
vue2 前后端分离项目ajax跨域session问题解决方法
Apr 27 Javascript
Angular中的$watch、$watchGroup、$watchCollection
Jun 25 Javascript
微信小程序实现折叠面板
Jan 31 Javascript
antd Upload 文件上传的示例代码
Dec 14 Javascript
JS中的算法与数据结构之链表(Linked-list)实例详解
Aug 20 Javascript
vue实现百度下拉列表交互操作示例
Mar 12 #Javascript
vue基础之使用get、post、jsonp实现交互功能示例
Mar 12 #Javascript
深入理解Node内建模块和对象
Mar 12 #Javascript
vue基础之模板和过滤器用法实例分析
Mar 12 #Javascript
mpvue开发音频类小程序踩坑和建议详解
Mar 12 #Javascript
React中this丢失的四种解决方法
Mar 12 #Javascript
使用koa2创建web项目的方法步骤
Mar 12 #Javascript
You might like
javascript 二分法(数组array)
2010/04/24 Javascript
JqGrid web打印实现代码
2011/05/31 Javascript
ASP.NET中AJAX 调用实例代码
2012/05/03 Javascript
node.js中的forEach()是同步还是异步呢
2015/01/29 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
jQuery实现字体颜色渐变效果的方法
2017/03/29 jQuery
js canvas实现擦除效果示例代码
2017/04/26 Javascript
详解基于Bootstrap+angular的一个豆瓣电影app
2017/06/26 Javascript
微信小程序实时聊天WebSocket
2018/07/05 Javascript
vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法
2018/07/12 Javascript
微信小程序开发之自定义tabBar的实现
2018/09/06 Javascript
vue实现记事本功能
2019/06/26 Javascript
[49:07]VGJ.T vs Optic Supermajor小组赛D组 BO3 第二场 6.3
2018/06/04 DOTA
[54:06]OG vs TNC 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python 字符串大小写转换的简单实例
2017/01/21 Python
python3使用腾讯企业邮箱发送邮件的实例
2019/06/28 Python
python射线法判断检测点是否位于区域外接矩形内
2019/06/28 Python
ML神器:sklearn的快速使用及入门
2019/07/11 Python
Python 函数list&amp;read&amp;seek详解
2019/08/28 Python
python3.5 cv2 获取视频特定帧生成jpg图片
2019/08/28 Python
python文件操作的简单方法总结
2019/11/07 Python
简单了解python filter、map、reduce的区别
2020/01/14 Python
基于Python3.7.1无法导入Numpy的解决方式
2020/03/09 Python
python判断正负数方式
2020/06/03 Python
CSS3教程(1):什么是CSS3
2009/04/02 HTML / CSS
TIME时代杂志台湾总代理:台时亚洲
2018/10/22 全球购物
经理职责范文
2013/11/08 职场文书
企业演讲稿范文
2013/12/28 职场文书
中学生自我鉴定
2014/02/04 职场文书
党员自我批评与反省材料
2014/02/10 职场文书
学校后勤岗位职责
2014/02/19 职场文书
居委会四风问题个人对照检查材料
2014/09/25 职场文书
2014年全国法制宣传日宣传活动方案
2014/11/02 职场文书
2014年审计人员工作总结
2014/12/19 职场文书
JavaScript 语句之常用 for 循环详解
2021/03/29 Javascript
浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
2021/05/21 Python