欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

van-picker組件default-index屬性設(shè)置不生效踩坑及解決

 更新時間:2023年01月17日 16:44:00   作者:weixin_45121510  
這篇文章主要介紹了van-picker組件default-index屬性設(shè)置不生效踩坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

van-picker組件default-index屬性設(shè)置不生效

官方文檔:default-index 單列選擇時,默認(rèn)選中項(xiàng)的索引 number | string 0

defaultIndex 這個屬性只是一個初始值,

如果需要動態(tài)改變 index索引:

建議使用 picker 實(shí)例的 setIndexes 方法

通過 ref 可以獲取到 Picker 實(shí)例并調(diào)用實(shí)例方法,

setIndexes 設(shè)置所有列選中值對應(yīng)的索引 indexes -

// 1.給van-picker設(shè)置ref,如ref="van_picker"

	<van-popup v-model="showPicker" position="bottom">
		<van-picker
			show-toolbar  value-key="label"  ref="van_picker"
			:columns="columns"  :default-index="defaultBuIndex"
			@confirm="onConfirm" @cancel="showPicker = false"
		/>
	</van-popup>
	
// 2. 在需要的方法中調(diào)用:  

	 this.$nextTick(() =>{
		this.$refs.van_picker.setIndexes([0])    // 注意這里是數(shù)組[索引值]
	})

vant picker組件踩坑

vant Picker組件,不顯示頂部欄,change事件拿到的值有1-2s延遲問題

ui設(shè)計如圖


在這里插入圖片描述

因需求要求,picker去掉頂部欄,點(diǎn)擊下方確認(rèn)按鈕的時候獲取選中的值

方法一

綁定change事件,選項(xiàng)改變時觸發(fā)(但是有1s的延遲,操作太快了會取不到值,不可?。?/p>

<van-picker
? ? :show-toolbar="true"
? ? :columns="reason"
? ? ref="picker"
? ? @change="change"
? />
? ? <div class="btn" @click="handlePopSubmit('reason')">確認(rèn)</div>


change(value){
//單列:Picker 實(shí)例,選中值,選中值對應(yīng)的索引
//多列:Picker 實(shí)例,所有列選中值,當(dāng)前列對應(yīng)的索引
}

方法二

通過使用ref,調(diào)用ref的confirm方法(和方法一是一樣的,有1s的延遲,操作太快了會取不到值)

<van-picker
? ? :show-toolbar="true"
? ? :columns="reason"
? ? ref="picker"
? ? ref="pick"
? />
? <div class="btn" @click="handlePopSubmit('reason')">確認(rèn)</div>

handlePopSubmit(){
?? ?console.log('選中的值',this.$refs.picker.getValues)
}

方法三

有點(diǎn)笨拙,但是不會出問題

vant-picker的show-toolbar設(shè)置為true,但是在頁面上對頂部的導(dǎo)航欄樣式隱藏(例如:display:none)

<van-picker
? ? :show-toolbar="true"
? ? :columns="reason"
? ? ref="picker"
? ? @confirm="handleReasonChange"
? />
? <div class="btn" @click="handlePopSubmit('reason')">確認(rèn)</div>


handleReasonChange(value, index) {
//value :選中的值 取值即可
//index: 下標(biāo) ??
? }

handlePopSubmit(){
?? ? let pickReason = (this.$refs.picker as any).$el.children[0].children[1]; //拿到頂部欄的確認(rèn)元素
? ? ? pickReason.click(); //執(zhí)行一下
?}

目前想到的解決辦法只有這三種!

總結(jié)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue 過濾器filters及基本用法

    Vue 過濾器filters及基本用法

    這篇文章主要介紹了Vue 過濾器filters的實(shí)例代碼以及vue過濾器的基本用法,需要的朋友可以參考下
    2017-12-12
  • Vue父組件調(diào)用子組件事件方法

    Vue父組件調(diào)用子組件事件方法

    下面小編就為大家分享一篇Vue父組件調(diào)用子組件事件方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • vue的.vue文件是怎么run起來的(vue-loader)

    vue的.vue文件是怎么run起來的(vue-loader)

    通過vue-loader,解析.vue文件,在webpack解析,拆解vue組件 ,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友參考下
    2018-12-12
  • vue 全選與反選的實(shí)現(xiàn)方法(無Bug 新手看過來)

    vue 全選與反選的實(shí)現(xiàn)方法(無Bug 新手看過來)

    下面小編就為大家分享一篇vue 全選與反選的實(shí)現(xiàn)方法(無Bug 新手看過來),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • VueUse功能精簡你的dependencies

    VueUse功能精簡你的dependencies

    這篇文章主要為大家介紹了VueUse功能精簡你的dependencies實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • 關(guān)于element-ui中@selection-change執(zhí)行兩次的問題

    關(guān)于element-ui中@selection-change執(zhí)行兩次的問題

    這篇文章主要介紹了關(guān)于element-ui中@selection-change執(zhí)行兩次的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 解決nuxt 自定義全局方法,全局屬性,全局變量的問題

    解決nuxt 自定義全局方法,全局屬性,全局變量的問題

    這篇文章主要介紹了解決nuxt 自定義全局方法,全局屬性,全局變量的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • vue實(shí)現(xiàn)一拉到底的滑動驗(yàn)證

    vue實(shí)現(xiàn)一拉到底的滑動驗(yàn)證

    這篇文章主要為大家詳細(xì)介紹了vue簡單的一拉到底的滑動驗(yàn)證,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • 關(guān)于vue3 vuex4 store的響應(yīng)式取值問題解決

    關(guān)于vue3 vuex4 store的響應(yīng)式取值問題解決

    這篇文章主要介紹了vue3 vuex4 store的響應(yīng)式取值問題,在實(shí)際生活中遇到這樣一個問題:在頁面中點(diǎn)擊按鈕,數(shù)量增加,值是存在store中的,點(diǎn)擊事件值沒變,如何解決這個問題,本文給大家分享解決方法,需要的朋友可以參考下
    2022-08-08
  • 淺析vue插槽和作用域插槽的理解

    淺析vue插槽和作用域插槽的理解

    插槽,也就是slot,是組件的一塊HTML模板,這塊模板顯示不現(xiàn)實(shí)、以及怎樣顯示由父組件來決定。這篇文章主要介紹了淺析vue插槽和作用域插槽的理解,需要的朋友可以參考下
    2019-04-04

最新評論