微信小程序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 相关文章推荐
基于jQuery的获取标签名的代码
Jul 16 Javascript
js定时器(执行一次、重复执行)
Mar 07 Javascript
对Web开发中前端框架与前端类库的一些思考
Mar 27 Javascript
JQuery球队选择实例
May 18 Javascript
js实现带有介绍的Select列表菜单实例
Aug 18 Javascript
基于Jquery代码实现手风琴菜单
Nov 19 Javascript
Angular路由简单学习
Dec 26 Javascript
详解vue2.0脚手架的webpack 配置文件分析
May 27 Javascript
基于input框覆盖掉数字英文的实例讲解
Jul 21 Javascript
详解PHP后期静态绑定分析与应用
Mar 21 Javascript
vue.js中ref及$refs的使用方法解析
Oct 08 Javascript
解决vue scoped html样式无效的问题
Oct 24 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+xslt在windows平台上
2006/10/09 PHP
PHP中文件缓存转内存缓存的方法
2011/12/06 PHP
解析阿里云ubuntu12.04环境下配置Apache+PHP+PHPmyadmin+MYsql
2013/06/26 PHP
php制作的简单验证码识别代码
2016/01/26 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
PHP中Notice错误常见解决方法
2017/04/28 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
PHP保留两位小数的几种方法
2019/07/24 PHP
TP5框架请求响应参数实例分析
2019/10/17 PHP
php测试kafka项目示例
2020/02/06 PHP
parentElement,srcElement的使用小结
2014/01/13 Javascript
jQuery中outerHeight()方法用法实例
2015/01/19 Javascript
jQuery实现ajax的叠加和停止(终止ajax请求)
2016/08/08 Javascript
vue 里面使用axios 和封装的示例代码
2017/09/01 Javascript
JavaScript实现精美个性导航栏筋斗云效果
2017/10/29 Javascript
vue中动态添加class类名的方法
2018/09/05 Javascript
JavaScript模板引擎应用场景及实现原理详解
2018/12/14 Javascript
mockjs+vue页面直接展示数据的方法
2018/12/19 Javascript
layui 实现table翻页滚动条位置保持不变的例子
2019/09/05 Javascript
新手入门js闭包学习过程解析
2019/10/08 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
[01:05]DOTA2完美大师赛趣味视频之选手教你打职业
2017/11/23 DOTA
Python生成短uuid的方法实例详解
2018/05/29 Python
使用Python向DataFrame中指定位置添加一列或多列的方法
2019/01/29 Python
PHP数据运算类型都有哪些
2013/11/05 面试题
C#面试常见问题
2013/02/25 面试题
长青弘远的面试题
2012/06/09 面试题
法人任命书范本
2014/06/04 职场文书
力学专业求职信
2014/07/23 职场文书
财务务虚会发言材料
2014/10/20 职场文书
党委班子纠正“四风”问题整改措施
2014/10/28 职场文书
党的群众路线教育实践活动个人对照检查材料(公安)
2014/11/05 职场文书
留学推荐信怎么写
2015/03/26 职场文书
机关干部作风整顿心得体会
2016/01/22 职场文书
在python中实现导入一个需要传参的模块
2021/05/12 Python
Jmerte 分布式压测及分布式压测配置
2022/04/30 Java/Android