vant遇到van-sidebar數(shù)據(jù)超出不能滑動的問題
van-sidebar數(shù)據(jù)超出不能滑動
問題:項目中使用了van-popup彈出層加載子組件內容,子組件使用了van-sidebar側邊導航
解決方法
lock-scroll:是否鎖定背景滾動
<van-popup v-model="showLaodingport" position="bottom" :style="{ height: '100%'}" :lock-scroll="false">
? ? ? ? //子組件
? ? ? <loadingPort @child="fromLoadingport"/>
?</van-popup>默認是true,設置為false即可。
最近項目中使用vant的一些總結
vantUi是有贊團隊開發(fā)的一款針對于小程序及手機端的一款UI框架
使用時非常方便 但是其中一些bug也很多 把項目中遇到的坑及小tipes分享一下
供自己記憶同時也分享給大家
好好讀文檔 好好讀文檔 好好讀文檔 !important
List 列表
list列表組件完全是全自動的
自動請求、自動刪除loading、頁面刷新自動更新。。。
總之在list中你只要做兩件事:
- 在請求數(shù)據(jù)== 數(shù)據(jù)庫數(shù)據(jù) 時給list一個finished狀態(tài)
- 填寫你所需要的請求函數(shù)
重用list導致的bug

在寫如上代碼時重用list列表 --導致左右擊后每次選擇條件onload函數(shù)會觸發(fā)兩變
bug分析:
由于每次切換當有的頁面加載完成后finished狀態(tài)會改變,
當其重新開啟的時候會觸發(fā)一次onload函數(shù)而我們正常來說也會手動觸發(fā)一次請求數(shù)據(jù)
所以在每次請求時候判斷一下 finished改變的時候就不要重新手動觸發(fā)onload函數(shù)了
如下:
if (this.page) {
sn = 2;
this.listForMaine = [];
this.startAt = 0;
if(this.myFinished){
this.myFinished= false;
hasChanged = true
}
} else {
sn = 1;
this.listForExmation = [];
this.startAtExamtion = 0;
if(this.myExaminationinished){
// changed
this.myExaminationinished= false;
hasChanged = true
}
}
if(!hasChanged){
this.getSourceDate(sn)
}
vant一些內置api也很好用
比如:

通過ref綁定詳細請閱讀文檔
vant中的toast等代碼形式的樣式需要額外引入
如:
import { Toast } from 'vant';
然后再使用,否則會報錯
DatetimePicker 時間選擇器
這個組件可以精確到分鐘 已經很好用了
Slider 滑塊
其中有一個選項可以實現(xiàn)雙滑塊很舒服

媽媽再也不讓我寫原生了
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
vue 框架下自定義滾動條(easyscroll)實現(xiàn)方法
這篇文章主要介紹了vue 框架下自定義滾動條(easyscroll)實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-08-08
基于Vue + Axios實現(xiàn)全局Loading自動顯示關閉效果
在vue項目中,我們通常會使用Axios來與后臺進行數(shù)據(jù)交互,而當我們發(fā)起請求時,常常需要在頁面上顯示一個加載框(Loading),然后等數(shù)據(jù)返回后自動將其隱藏,本文介紹了基于Vue + Axios實現(xiàn)全局Loading自動顯示關閉效果,需要的朋友可以參考下2024-03-03

