微信小程序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 相关文章推荐
Mootools 1.2教程(21)——类(二)
Sep 15 Javascript
屏蔽F1~F12的快捷键的js函数
May 06 Javascript
JS实现简单的Canvas画图实例
Jul 04 Javascript
Jjcarousellite 实现图片列表滚动的简单实例
Nov 29 Javascript
AMD异步模块定义介绍和Require.js中使用jQuery及jQuery插件的方法
Jun 06 Javascript
JS获取一个未知DIV高度的方法
Aug 09 Javascript
prototype与__proto__区别详细介绍
Jan 09 Javascript
详解webpack es6 to es5支持配置
May 04 Javascript
JavaScript实现鼠标滚轮控制页面图片切换功能示例
Oct 14 Javascript
Bootstrap图片轮播效果详解
Oct 17 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
Feb 24 Javascript
在 HTML 页面中使用 React的场景分析
Jan 18 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
php中如何同时使用session和cookie来保存用户登录信息
2013/07/05 PHP
PHP学习笔记(二) 了解PHP的基本语法以及目录结构
2014/08/04 PHP
Codeigniter通过SimpleXML将xml转换成对象的方法
2015/03/19 PHP
PHP实现图片上传并压缩
2015/12/22 PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
2016/03/03 PHP
PHP全功能无变形图片裁剪操作类与用法示例
2017/01/10 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
2017/12/25 PHP
简单的JS多重继承示例
2008/03/13 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
javascript中的window.location.search方法简介
2013/09/02 Javascript
jQuery实现鼠标滑过链接控制图片的滑动展开与隐藏效果
2015/10/28 Javascript
关于JS中的apply,call,bind的深入解析
2016/04/05 Javascript
快速解决Canvas.toDataURL 图片跨域的问题
2016/05/10 Javascript
js获取新浪天气接口的实现代码
2016/06/06 Javascript
关于JavaScript数组你所不知道的3件事
2016/08/24 Javascript
jQuery查找节点并获取节点属性的方法
2016/09/09 Javascript
jQuery实现用户信息表格的添加和删除功能
2017/09/12 jQuery
微信小程序 POST请求的实例详解
2017/09/29 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
2018/09/14 Javascript
在小程序Canvas中使用measureText的方法示例
2018/10/19 Javascript
JavaScript和TypeScript中的void的具体使用
2019/09/12 Javascript
JavaScript Blob对象原理及用法详解
2020/10/14 Javascript
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:EE凭借法力虚空拿下4杀
2017/03/30 DOTA
[48:00]EG vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.26
2018/08/29 DOTA
Python中使用中文的方法
2011/02/19 Python
Python下的twisted框架入门指引
2015/04/15 Python
Python2实现的图片文本识别功能详解
2018/07/11 Python
python 判断txt每行内容中是否包含子串并重新写入保存的实例
2020/03/12 Python
Python3 webservice接口测试代码详解
2020/06/23 Python
Chantelle仙黛尔内衣美国官网:法国第一品牌内衣
2018/07/26 全球购物
宝宝周岁宴答谢词
2014/01/26 职场文书
优秀中学生事迹材料
2014/01/31 职场文书
白血病捐款倡议书
2014/05/14 职场文书
本科毕业生求职信
2014/06/15 职场文书
人身损害赔偿协议书范本
2014/09/27 职场文书
学生党员批评与自我批评
2014/10/15 职场文书