微信小程序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 相关文章推荐
Ucren Virtual Desktop V2.0
Nov 07 Javascript
jquery中dom操作和事件的实例学习 下拉框应用
Dec 01 Javascript
如何获取网站icon有哪些可行的方法
Jun 05 Javascript
使用jQuery制作浮动工具栏的实例分享
May 13 Javascript
JavaScript String 对象常用方法详解
May 13 Javascript
jQuery插件制作的实例教程
May 16 Javascript
提高JavaScript执行效率的23个实用技巧
Mar 01 Javascript
jquery实现异步加载图片(懒加载图片一种方式)
Apr 24 jQuery
JS实现网站楼层导航效果代码实例
Jun 16 Javascript
vue中组件通信详解(父子组件, 爷孙组件, 兄弟组件)
Jul 27 Javascript
vue 接口请求地址前缀本地开发和线上开发设置方式
Aug 13 Javascript
vue组件中传值EventBus的使用及注意事项说明
Nov 16 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 发送带附件邮件示例
2014/01/23 PHP
Javascript中call与apply的学习笔记
2014/09/22 Javascript
ajax读取数据后使用jqchart显示图表的方法
2015/06/10 Javascript
JavaScript淡入淡出渐变简单实例
2015/08/06 Javascript
微信小程序模板之分页滑动栏
2017/02/10 Javascript
js return返回多个值,通过对象的属性访问方法
2017/02/21 Javascript
JavaScript中Hoisting详解 (变量提升与函数声明提升)
2017/08/18 Javascript
JS实现快速比较两个字符串中包含有相同数字的方法
2017/09/11 Javascript
VueAwesomeSwiper在VUE中的使用以及遇到的一些问题
2018/01/11 Javascript
Vue项目中使用WebUploader实现文件上传的方法
2019/07/21 Javascript
javascript 对象 与 prototype 原型用法实例分析
2019/11/11 Javascript
如何实现iframe父子传参通信
2020/02/05 Javascript
JavaScript中的执行环境和作用域链
2020/09/04 Javascript
[01:04:29]DOTA2-DPC中国联赛 正赛 Phoenix vs XG BO3 第二场 1月31日
2021/03/11 DOTA
python实现在pickling的时候压缩的方法
2014/09/25 Python
初步探究Python程序的执行原理
2015/04/11 Python
Python中selenium实现文件上传所有方法整理总结
2017/04/01 Python
Python实现PS滤镜碎片特效功能示例
2018/01/24 Python
pandas将numpy数组写入到csv的实例
2018/07/04 Python
Python读写文件基础知识点
2019/06/10 Python
Python通过cv2读取多个USB摄像头
2019/08/28 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
2020/07/01 Python
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
详解移动端h5页面根据屏幕适配的四种方案
2020/04/15 HTML / CSS
Tod’s英国官方网站:意大利奢华手工制作手袋和鞋履
2019/03/15 全球购物
ghd法国官方网站:英国最受欢迎的美发工具品牌
2019/04/18 全球购物
餐饮业员工工作决心书
2014/03/11 职场文书
中药专业自荐信范文
2014/03/18 职场文书
白血病募捐倡议书
2014/05/14 职场文书
小学数学教学经验交流材料
2014/05/22 职场文书
上课迟到检讨书300字
2014/10/15 职场文书
先进班组材料范文
2014/12/25 职场文书
2015年教务工作总结
2015/05/23 职场文书
Pytorch中TensorBoard及torchsummary的使用详解
2021/05/12 Python
vue+spring boot实现校验码功能
2021/05/27 Vue.js
使用Python解决图表与画布的间距问题
2022/04/11 Python