移動(dòng)端開發(fā),處理列表翻頁和數(shù)據(jù)的時(shí)候,下拉刷新和上拉加載應(yīng)用的比較廣泛,今天給大家推薦一個(gè)vue的插件,vueScroll,首先上圖:
成都創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)與策劃設(shè)計(jì),隴南網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:隴南等地區(qū)。隴南做網(wǎng)站價(jià)格咨詢:18982081108
話不多說,上代碼了:
一、引入并使用VueScroll
import VueScroller from 'vue-scroller'; Vue.use(VueScroller)
二、在html或者.vue組件里面使用
三、在js文件里面操作插件
首先在在methods里面寫上方法
在data里面實(shí)現(xiàn)申明好 isLoading = true;
然后繼續(xù)在methods里面寫上刷新和加載的方法:
refresh(done) { let timer = null; this.page = 1; clearTimeout(timer); timer = setTimeout(() => { this.myInstalHomeFun(done); }, 500); }, infinite(done) { let timer = null; clearTimeout(timer); timer = setTimeout(() => { this.myInstalHomeFun(done); }, 500); }
到這里就可以實(shí)現(xiàn)效果了,但是但是 有幾個(gè)細(xì)節(jié)我必須提一下:
(1)高度的問題,這個(gè)插件需要給外層的scroller 設(shè)置高度,所以要注意,我這里是這樣操作的:
methods: { // 獲取高度 getHeight(){ let bodyHeight = document.documentElement.clientHeight; let scroller = this.$refs.scroller; let scrollerTop = scroller.getBoundingClientRect().top; scroller.style.height = (bodyHeight-scrollerTop)+"px"; }, }
并且在mounted里面調(diào)用這個(gè)方法,這樣就可以把高度設(shè)置好,并且在任何位置都可以放置了
(2)vueScoller 內(nèi)部的結(jié)構(gòu)是絕對(duì)定位,所以一定要給外層設(shè)置好相對(duì)定位;
這樣就可以解覺定位引起的位置跑偏的問題了。
參考文檔:https://vuescrolljs.yvescoding.org
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。