微信小程序picker組件關(guān)于objectArray數(shù)據(jù)類型的綁定方法
一、前言:
我發(fā)現(xiàn)很多的同學(xué)都在抱怨說微信小程序的picker的mode = selector/mode = multiSelector 無法實現(xiàn)Object Array數(shù)據(jù)類型的綁定,其實很多人就想要和html中的下拉選中的通過選中獲取vaule中的屬性值,其實認(rèn)真查看微信picker組件詳解的都知道其實是可以實現(xiàn)的,只不過微信給的實例是array的實例而object array實例是留給大家去動手的喲,在這里我主要介紹的mode=selector 的objectArray實現(xiàn)。
二、介紹:
普通選擇器:mode = selector
| 屬性名 | 類型 | 默認(rèn)值 | 說明 | |
|---|---|---|---|---|
| range | Array / Object Array | [] | mode為 selector 或 multiSelector 時,range 有效 | |
| range-key | String | 當(dāng) range 是一個 Object Array 時,通過 range-key 來指定 Object 中 key 的值作為選擇器顯示內(nèi)容 | ||
| value | Number | 0 | value 的值表示選擇了 range 中的第幾個(下標(biāo)從 0 開始) | |
| bindchange | EventHandle | value 改變時觸發(fā) change 事件,event.detail = {value: value} | ||
| disabled | Boolean | false | 是否禁用 |
微信picker組件詳解: https://developers.weixin.qq.com/miniprogram/dev/component/picker.html?search-key=picker
首先我的數(shù)據(jù)格式是:[{ name: '服務(wù)質(zhì)量', id: 20 }, { name: '服務(wù)品質(zhì)', id: 24 }, { name: '服務(wù)速度', id: 25}]
.wxml頁代碼:
//其中range為數(shù)據(jù)源,value為下標(biāo)索引,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代碼:
/**
* 頁面的初始數(shù)據(jù)
*/
data: {
type: [{ name: '服務(wù)質(zhì)量', id: 20 }, { name: '服務(wù)品質(zhì)', id: 24 }, { name: '服務(wù)速度', id: 25}],
index: 0,//索引
},
Change: function (e) {
console.log('picker發(fā)送選擇改變,索引值為', e.detail.value)
console.log("選中的id值:"+e.target.dataset.id)
console.log(e);
this.setData({
index: e.detail.value
})
}
頁面效果和輸出結(jié)果:


以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
javascript中對象的定義、使用以及對象和原型鏈操作小結(jié)
這篇文章主要介紹了javascript中對象的定義、使用以及對象和原型鏈操作,結(jié)合實例形式總結(jié)分析了javascript對象操作的常用技巧,需要的朋友可以參考下2016-12-12
基于Echarts 3.19 制作常用的圖形(非靜態(tài))
這篇文章主要介紹了基于Echarts 3.19 制作常用的圖形(非靜態(tài))的相關(guān)資料,需要的朋友可以參考下2016-05-05
Javascript中各種trim的實現(xiàn)詳細(xì)解析
這篇文章主要是對Javascript中各種trim的實現(xiàn)進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12

