vant的picker的坑及解決
更新時間:2022年12月05日 10:11:12 作者:玲瓏咖啡
這篇文章主要介紹了vant的picker的坑及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
vant的picker的坑
<view class="picker" bindtap="goSub">
{{subjectname}}
<image class="img" src="../../images/bottom-arrow-pic.png"></image>
<!-- 年級篩選 -->
<van-popup show="{{ subShow }}" bind:close="subClose" position="bottom" overlay-style="background:rgba(0,0,0,0.3)">
<van-picker columns="{{ subColumns }}" bind:cancel="subCancel" bind:confirm="subConfirm" show-toolbar value-key="name"
toolbar-class="cancon" />
</van-popup>
</view>咋一看上面的代碼貌似沒有什么問題,但是點擊picker出來之后會發(fā)現(xiàn),關閉不了了,無論怎么點都不會關閉彈出層,頁面也無報錯信息,經(jīng)過測試發(fā)現(xiàn),組件寫錯地方了
下面是正確的寫法
<view class="picker" bindtap="goSub">
?? ?{{subjectname}}
?? ?<image class="img" src="../../images/bottom-arrow-pic.png"></image>
</view>
<!-- 年級篩選 -->
<van-popup show="{{ subShow }}" bind:close="subClose" position="bottom" overlay-style="background:rgba(0,0,0,0.3)">
?? ?<van-picker columns="{{ subColumns }}" bind:cancel="subCancel" bind:confirm="subConfirm" show-toolbar value-key="name"
?? ? toolbar-class="cancon" />
</van-popup>看出來不同之處了吧,相比大家都明白為什么了。
vant-picker級聯(lián)問題
級聯(lián)時主要注意一級二級之間的聯(lián)動,需要一個方法處理,其他的跟單列的相同
<div class="content">
<div @click="openPicker()">{{pickerValue}}</div>
<van-popover v-model="showPicker" position="bottom">
<van-picker
:columns="columns"
show-toolbar
:default-index="defaultIndex"
@confirm="setData"
@cancel="showPicker = false"
></van-picker>
</van-popover>
</div>showPicker:false,
defaultIndex:0,
pickerValue0:'浙江',
pickerValue:'溫州',
columns: [{
text: '浙江',
defaultIndex:NaN,
children: [{
text: '杭州',
defaultIndex:NaN
}, {
text: '溫州',
defaultIndex:NaN
}]
}, {
text: '福建',
defaultIndex:NaN,
children: [{
text: '福州',
defaultIndex:NaN
}, {
text: '廈門',
defaultIndex:NaN
}]
}] openPicker(){
// 打開篩選框的默認值
this.columns.map((item,index)=>{
if(this.pickerValue0===item.text){
this.defaultIndex = parseInt(index)
for(let i =0 ;i<item.children.length;i++){
if(this.pickerValue === item.children[i].text){
item.defaultIndex = parseInt(i)
}
}
}
})
console.log(this.columns);
this.showPicker = true
},總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
關于vue中根據(jù)用戶權(quán)限動態(tài)添加路由的問題
每次路由發(fā)生變化時都需要調(diào)用一次路由守衛(wèi),并且store中的數(shù)據(jù)會在每次刷新的時候清空,因此需要判斷store中是否有添加的動態(tài)路由,本文給大家分享vue中根據(jù)用戶權(quán)限動態(tài)添加路由的問題,感興趣的朋友一起看看吧2021-11-11
Vue.js使用this.$confirm換行顯示提示信息實例
在編寫Web應用時,實現(xiàn)多行文本顯示通常需要用到HTML標簽或JavaScript特定函數(shù),本文介紹了如何使用JavaScript的$createElement函數(shù)來創(chuàng)建多行文本顯示,$createElement可以創(chuàng)建任何HTML標簽,使得在JavaScript中控制HTML輸出更加靈活,通過簡單的代碼示例2024-10-10
詳解vue中$nextTick和$forceUpdate的用法
這篇文章主要介紹了詳解vue中$nextTick和$forceUpdate的用法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12
ant-design-vue中設置Table每頁顯示的條目數(shù)量方式
這篇文章主要介紹了ant-design-vue中設置Table每頁顯示的條目數(shù)量方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10

