本文主要和大家分享vue element-ui table表格滾動載入方法,具有很好的參考價值,希望能幫助大家。
新增全域註冊事件,用來監聽捲動事件
window.Vue.directive('loadmore', { bind(el, binding) { const selectWrap = el.querySelector('.el-table__body-wrapper') selectWrap.addEventListener('scroll', function() { let sign = 100 const scrollDistance = this.scrollHeight - this.scrollTop - this.clientHeight if (scrollDistance <= sign) { binding.value() } }) } })
sign 用來標記位置
直接讓scrollDistance === sign 並不能保證每次都會觸發,所以用區間表示。後續會處理頻繁觸發問題。
新增事件
為需要無線載入的表格新增自訂事件,v-loadmore=”loadMore」。在methods中定義觸發的事件
loadMore () { if (this.loadSign) { this.loadSign = false this.page++ if (this.page > 10) { return } setTimeout(() => { this.loadSign = true }, 1000) console.log('到底了', this.page) } }
this.loadSign 用於標記page是否繼續遞增
相關推薦:
##詳解Vue.js 的行動端元件庫mint-ui實現無限滾動加載更多
以上是element-ui實作table表格滾動加載的詳細內容。更多資訊請關注PHP中文網其他相關文章!