vantUI 獲得piker選中值的自定義ID操作
問題
官網中給的picker例子,每項只能是個字符串,但我需要它返回每個字符串對應的自定義ID,而不是index。
vantUI官網:picker
官網例子
<van-picker :columns="columns" @change="onChange" /> export default { data() { return { columns: ['杭州', '寧波', '溫州', '嘉興', '湖州'] }; }, methods: { onChange(picker, value, index) { console.log('當前值'+value+ '當前索引'+index); } } };
解決
現(xiàn)在我的需求是獲得選中的值的id,而不是要這個index,所以只能用對象數組,看到官網上的禁用例子的數組中:{ text: '杭州', disabled: true },說明確實每行的數據是個對象的,而顯示的部分就是text的值。
那就照著這個來唄!
export default { data() { return { //改一下 columns: [ {"keyId":2,"text":"測試1"}, {"keyId":10,"text":"測試2"}, {"keyId":31,"text":"測試3"} ], }; }, methods: { onChange(picker, value, index) { //此時返回的value就是個對象了 var keyId = value.keyId; var text= value.text; console.log('當前值'+keyId + '當前索引'+text); } } };
補充知識:vantUI時間選擇器將選中值改為 yyyy-mm-dd 00:00:00 格式
vantUI時間選擇器默認選中值為:
更改之后
代碼如下
<van-popup v-model="startTimeshow" position="bottom" :overlay="true"> <van-datetime-picker @cancel="Cancel" @confirm="Confirm" @change="Change" v-model="currentDate" type="date" /> </van-popup>
data() { return { currentDate: new Date() }; }, methods:{ Change(){ console.log(this.currentDate); var date = this.currentDate; var seperator1 = "-"; var seperator2 = ":"; var month = date.getMonth() + 1; var strDate = date.getDate(); if (month >= 1 && month <= 9) { month = "0" + month; } if (strDate >= 0 && strDate <= 9) { strDate = "0" + strDate; } this.currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + " " + "00" + seperator2 + "00" + seperator2 + "00"; } }
以上這篇vantUI 獲得piker選中值的自定義ID操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
vue3+elementUI實現(xiàn)懸浮多行文本輸入框效果
這篇文章主要為大家詳細介紹了vue3如何引用elementUI實現(xiàn)懸浮文本輸入框效果,以便實現(xiàn)多行文本輸入,感興趣的小伙伴可以跟隨小編一起學習一下2023-10-10vue結合axios實現(xiàn)restful風格的四種請求方式
這篇文章主要介紹了vue結合axios實現(xiàn)restful風格的四種請求方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-06-06vue項目如何實現(xiàn)ip和localhost同時訪問
這篇文章主要介紹了vue項目如何實現(xiàn)ip和localhost同時訪問,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10