摘要:先來(lái)實(shí)現(xiàn)局部的滾動(dòng)加載沒(méi)有更多了這是測(cè)試的數(shù)據(jù)這是測(cè)試的數(shù)據(jù)這是測(cè)試的數(shù)據(jù)這是測(cè)試的數(shù)據(jù)這是測(cè)試的數(shù)據(jù)這是測(cè)試的數(shù)據(jù)這里監(jiān)聽(tīng)等于觸發(fā)獲取數(shù)據(jù)的方法否則不觸發(fā)我是監(jiān)聽(tīng)的距離底部的距離判斷當(dāng)前頁(yè)數(shù)大于最后一頁(yè)加載完畢首次加載頁(yè)面
先來(lái)實(shí)現(xiàn)局部的滾動(dòng)加載
- {{item}}
- ~沒(méi)有更多了~
我這的樣式外層div的高度設(shè)置的500 可以自行設(shè)置高度
下面把滾動(dòng)加載的方法封裝成v-loadmore 自定義指令
新建loadMore.js
import Vue from "vue" Vue.directive("loadmore", { // inserted: (el, bind, vnode) => { // 這里參考管方https://cn.vuejs.org/v2/guide/custom-directive.html#%E5%8A%A8%E6%80%81%E6%8C%87%E4%BB%A4%E5%8F%82%E6%95%B0 // el當(dāng)前綁定的元素 // console.log(el, bind, vnode) // 給元素添加滾動(dòng)事件監(jiān)聽(tīng) el.addEventListener("scroll", function () { console.log("綁定元素的高度:", el.clientHeight) console.log("綁定元素的滾動(dòng)條的高度", el.scrollHeight) console.log("滾動(dòng)條距離頂部的距離", el.scrollTop) console.log("滾動(dòng)條的高度 - 元素的高度 - 滾動(dòng)條距離頂部的距離 = 0", (el.scrollHeight - el.clientHeight) - el.scrollTop) // 這里的判斷和上面watch監(jiān)聽(tīng)是一樣的 if ((el.scrollHeight - el.clientHeight) - el.scrollTop === 0) { // binding.value來(lái)調(diào)用指令上的方法獲取數(shù)據(jù) binding.value() } }) } })
頁(yè)面中使用就簡(jiǎn)單很多了 可以直接使用指令綁定一個(gè)方法來(lái)調(diào)用獲取數(shù)據(jù)的方法
- {{item}}
- ~沒(méi)有更多了~
自己實(shí)現(xiàn)滾動(dòng)加載就是這樣的
知識(shí)積累,有不足的地方希望各位評(píng)論中指出來(lái)改進(jìn)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/105997.html
摘要:突然有個(gè)人問(wèn)起如何做滾動(dòng)監(jiān)聽(tīng)既然你誠(chéng)心誠(chéng)意的發(fā)問(wèn)了我就大發(fā)慈悲的告訴你武藏小次郎指令可以很好的做這件事情下面以舉例用于在的下拉框加上滾動(dòng)到底事件監(jiān)聽(tīng)獲取定義好的盒子獲取元素內(nèi)容高度只讀獲取或者設(shè)置元素的偏移值常用于計(jì)算滾動(dòng)條 突然有個(gè)人問(wèn)起vue如何做滾動(dòng)監(jiān)聽(tīng)? 既然你誠(chéng)心誠(chéng)意的發(fā)問(wèn)了, 我就大發(fā)慈悲的告訴你.(武藏 & 小次郎) 指令可以很好的做這件事情, 下面以element-se...
摘要:天氣預(yù)報(bào)小程序說(shuō)了很多小程序開(kāi)發(fā)的基礎(chǔ)準(zhǔn)備,下面就結(jié)合個(gè)人實(shí)際練手項(xiàng)目天氣預(yù)報(bào)小程序簡(jiǎn)單說(shuō)明。物料準(zhǔn)備從需求結(jié)果導(dǎo)向,天氣程序首先要能獲取到當(dāng)前所在地天氣狀況,再次可以自由選擇某地,知道其天氣狀況。 前言 學(xué)習(xí)了一段時(shí)間小程序,大致過(guò)了兩遍開(kāi)發(fā)文檔,抽空做個(gè)自己的天氣預(yù)報(bào)小程序,全當(dāng)是練手,在這記錄下。小程序開(kāi)發(fā)的安裝、注冊(cè)和接入等流程就不羅列了,在小程序接入指南已經(jīng)寫(xiě)得很清楚了,以下...
摘要:去年年底自己搭了一個(gè)在移動(dòng)端的開(kāi)發(fā)框架,感覺(jué)體驗(yàn)不是很好。路由懶加載首頁(yè)終于寫(xiě)完了,以上這些就是我在移動(dòng)端體驗(yàn)優(yōu)化的實(shí)戰(zhàn)。去年年底自己搭了一個(gè)vue在移動(dòng)端的開(kāi)發(fā)框架,感覺(jué)體驗(yàn)不是很好。上個(gè)星期又要做移動(dòng)端的項(xiàng)目了。所以我花了兩天時(shí)間對(duì)之前的那個(gè)開(kāi)發(fā)框架做了以下優(yōu)化 自定義vuex-plugins-loading 路由切換動(dòng)畫(huà) + keep alive 動(dòng)態(tài)管理緩存組件 better-sc...
摘要:插件開(kāi)發(fā)初體驗(yàn)懶加載前言閑來(lái)無(wú)事,想自己開(kāi)發(fā)一個(gè)簡(jiǎn)單的懶加載插件,能力的提升我覺(jué)得是可以通過(guò)編寫(xiě)插件實(shí)現(xiàn),研究了一下官網(wǎng)的插件編寫(xiě)。 Vue插件開(kāi)發(fā)初體驗(yàn)——(懶加載) 前言 閑來(lái)無(wú)事,想自己開(kāi)發(fā)一個(gè)簡(jiǎn)單的Vue懶加載插件,能力的提升我覺(jué)得是可以通過(guò)編寫(xiě)插件實(shí)現(xiàn),研究了一下官網(wǎng)的Vue插件編寫(xiě)。馬上自己獨(dú)立開(kāi)始編寫(xiě)懶加載插件。 一、寫(xiě)在前面 由于我在網(wǎng)上看了很多關(guān)于vue插件的實(shí)例,發(fā)...
閱讀 3139·2021-11-24 11:14
閱讀 3662·2021-11-22 15:22
閱讀 3291·2021-09-27 13:36
閱讀 799·2021-08-31 14:29
閱讀 1385·2019-08-30 15:55
閱讀 1857·2019-08-29 17:29
閱讀 1196·2019-08-29 16:24
閱讀 2530·2019-08-26 13:48