微信小程序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 相关文章推荐
客户端脚本中常常出现的一些问题和调试技巧
Jan 09 Javascript
window.returnValue使用方法示例介绍
Jul 03 Javascript
javascript 对象数组根据对象object key的值排序
Mar 09 Javascript
使用AngularJS编写较为优美的JavaScript代码指南
Jun 19 Javascript
jQuery绑定事件的四种方式介绍
Oct 31 Javascript
利用原生JS与jQuery实现数字线性变化的动画
Feb 24 Javascript
js 概率计算(简单版)
Sep 12 Javascript
angular中ui calendar的一些使用心得(推荐)
Nov 03 Javascript
three.js中文文档学习之创建场景
Nov 20 Javascript
vue-cli 3.x 配置Axios(proxyTable)跨域代理方法
Sep 19 Javascript
jQuery实现数字自动增加或者减少的动画效果示例
Dec 11 jQuery
微信小程序实现录制、试听、上传音频功能(带波形图)
Feb 27 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
分页显示Oracle数据库记录的类之一
2006/10/09 PHP
PHP读写文件的方法(生成HTML)
2006/11/27 PHP
YII模块实现绑定二级域名的方法
2014/07/09 PHP
php基于PDO连接MSSQL示例DEMO
2016/07/13 PHP
PHPstorm快捷键(分享)
2017/07/17 PHP
PHP PDOStatement::columnCount讲解
2019/01/30 PHP
Laravel5.1框架路由分组用法实例分析
2020/01/04 PHP
JQuery里面的几种选择器 查找满足条件的元素$(&quot;#控件ID&quot;)
2011/08/23 Javascript
Visual Studio中js调试的方法图解
2014/06/30 Javascript
使用pcs api往免费的百度网盘上传下载文件的方法
2016/03/17 Javascript
省市二级联动小案例讲解
2016/07/24 Javascript
js实时获取窗口大小变化的实例代码
2016/11/18 Javascript
Bootstrap基本样式学习笔记之表单(3)
2016/12/07 Javascript
微信小程序实现带刻度尺滑块功能
2017/03/29 Javascript
javascript刷新父页面方法汇总详解
2019/10/10 Javascript
nodejs语言实现验证码生成功能的示例代码
2019/10/13 NodeJs
VUE.js实现动态设置输入框disabled属性
2019/10/28 Javascript
JS数据类型STRING使用实例解析
2019/12/18 Javascript
vue 使用lodash实现对象数组深拷贝操作
2020/09/10 Javascript
在java中如何定义一个抽象属性示例详解
2017/08/18 Python
Django跨域请求问题的解决方法示例
2018/06/16 Python
详解opencv Python特征检测及K-最近邻匹配
2019/01/21 Python
Django ImageFiled上传照片并显示的方法
2019/07/28 Python
pytorch 数据处理:定义自己的数据集合实例
2019/12/31 Python
如何使用python socket模块实现简单的文件下载
2020/09/04 Python
python爬虫中PhantomJS加载页面的实例方法
2020/11/12 Python
Numpy中np.max的用法及np.maximum区别
2020/11/27 Python
俄罗斯购买自行车网站:Vamvelosiped
2021/01/29 全球购物
捐助倡议书范文
2014/04/15 职场文书
员工三分钟演讲稿
2014/08/19 职场文书
先进事迹演讲稿
2014/09/01 职场文书
乡镇领导干部个人对照检查材料思想汇报
2014/09/23 职场文书
装配出错检讨书
2014/09/23 职场文书
正风肃纪剖析材料范文
2014/10/10 职场文书
开国大典观后感
2015/06/04 职场文书
Windows 11上手初体验:任务栏和开始菜单等迎来大改
2021/11/21 数码科技