亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue實現滾動底部加載下一頁指令的示例代碼

 更新時間:2023年10月09日 15:20:27   作者:舊城夢空  
vue中監(jiān)控滾動事件可以直接在mounted中綁定滾動事件,然后在銷毀前解綁滾動事件,本文通過實例代碼介紹vue實現滾動底部加載下一頁指令的過程,感興趣的朋友跟隨小編一起看看吧

vue中監(jiān)控滾動事件可以直接在mounted中綁定滾動事件,然后在銷毀前解綁滾動事件,例如:

<script>
export default {
	mounted() {
		//我這里的事例監(jiān)聽的是window的滾動事件
		window.addEventListener('scroll', this.showbtn)
	},
	destroyed() {
    window.removeEventListener('scroll', this.showbtn)
  },
	methods:{
		showbtn() {
		//滾動事件的代碼
		}
	}
}
</script>

但是如果在項目中用的比較多的話,每個頁面都這樣寫就有點不合適了。那這個時候可以把滾動事件自定義成指令

Vue.directive('scroll',{
  bind(el,binding) {
    let p = 0
    let t = 0
    let down = true
    let timer = null
    el.handler = () => {
      p =  window.pageYOffset ||
        document.documentElement.scrollTop ||
        document.body.scrollTop
        if (t < p) {
          down = true
        } else {
          down = false
        }
        t = p
        let sign = 10
        let scrollHeight=document.documentElement.scrollHeight//滾動條的高度
        let clientHeight=document.documentElement.clientHeight//瀏覽器的可視高度
        const scrollDistance = scrollHeight -p -clientHeight
        if (scrollDistance < sign && down) {
          if (timer) clearTimeout(timer)
          timer = setTimeout(() => {
            binding.value()
          }, 300)
        }
    }
    setTimeout(() => {
      window.addEventListener('scroll',el.handler)
    },1000)
  },
  //只有綁定不解綁的話,會出現在頁面加載的時候調用之前請求過的接口的情況,所以加上解綁比較好
  unbind(el) {
    window.removeEventListener('scroll',el.handler)
  }
})

到此這篇關于vue實現滾動底部加載下一頁指令的文章就介紹到這了,更多相關vue滾動底部加載內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Vscode關閉Eslint語法檢查的多種方式(保證有效)

    Vscode關閉Eslint語法檢查的多種方式(保證有效)

    eslint是一個JavaScript的校驗插件,通常用來校驗語法或代碼的書寫風格,下面這篇文章主要給大家介紹了關于Vscode關閉Eslint語法檢查的多種方式,文章通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-07-07
  • 深入理解vue中slot與slot-scope的具體使用

    深入理解vue中slot與slot-scope的具體使用

    這篇文章主要介紹了深入理解vue中slot與slot-scope的具體使用,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • 關于el-select組件設置默認值的實現方式

    關于el-select組件設置默認值的實現方式

    這篇文章主要介紹了關于el-select組件設置默認值的實現方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue:el-input輸入時限制輸入的類型操作

    vue:el-input輸入時限制輸入的類型操作

    這篇文章主要介紹了vue:el-input輸入時限制輸入的類型操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Vue+Vant實現下拉加載功能

    Vue+Vant實現下拉加載功能

    為了像微信一樣方便地加載更多歷史消息,這篇文章將為大家介紹我們如何使用vant組件來實現下拉加載功能,感興趣的小伙伴可以跟隨小編一起了解一下
    2023-06-06
  • element-ui?tree?異步樹實現勾選自動展開、指定展開、指定勾選功能

    element-ui?tree?異步樹實現勾選自動展開、指定展開、指定勾選功能

    這篇文章主要介紹了element-ui?tree?異步樹實現勾選自動展開、指定展開、指定勾選,項目中用到了vue的element-ui框架,用到了el-tree組件,由于數據量很大,使用了數據懶加載模式,即異步樹,需要的朋友可以參考下
    2022-08-08
  • vue3中實現文本顯示省略號和tooltips提示框的方式詳解

    vue3中實現文本顯示省略號和tooltips提示框的方式詳解

    在?B?端業(yè)務中,我們經常會遇到文本內容超出容器區(qū)域需顯示省略號的需求,當鼠標移入文本時,會出現?Tooltip?顯示完整內容,最近,我也遇到了這樣的場景,接下來給大家介紹vue3中實現文本顯示省略號和tooltips提示框的方式,需要的朋友可以參考下
    2024-04-04
  • Vue中axios的封裝(報錯、鑒權、跳轉、攔截、提示)

    Vue中axios的封裝(報錯、鑒權、跳轉、攔截、提示)

    這篇文章主要介紹了Vue中axios的封裝(報錯、鑒權、跳轉、攔截、提示),本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • vue2中使用sass并配置全局的sass樣式變量的方法

    vue2中使用sass并配置全局的sass樣式變量的方法

    這篇文章主要介紹了vue2中使用sass并配置全局的sass樣式變量的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-09-09
  • vscode 開發(fā)Vue項目的方法步驟

    vscode 開發(fā)Vue項目的方法步驟

    這篇文章主要介紹了vscode 開發(fā)Vue項目的方法步驟,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11

最新評論