(编辑:jimmy 日期: 2024/11/19 浏览:2)
一、前言:
我发现很多的同学都在抱怨说微信小程序的picker的mode = selector/mode = multiSelector 无法实现Object Array数据类型的绑定,其实很多人就想要和html中的下拉选中的通过选中获取vaule中的属性值,其实认真查看微信picker组件详解的都知道其实是可以实现的,只不过微信给的实例是array的实例而object array实例是留给大家去动手的哟,在这里我主要介绍的mode=selector 的objectArray实现。
二、介绍:
普通选择器:mode = selector
微信picker组件详解: https://developers.weixin.qq.com/miniprogram/dev/component/picker.html"htmlcode">
//其中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 }) }
页面效果和输出结果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。