이 글은 주로 Vue Element-UI 테이블의 롤링 로딩 방법을 공유하며 좋은 참고 가치가 있으며 모두에게 도움이 되기를 바랍니다.
스크롤 이벤트를 수신하기 위해 전역 등록 이벤트를 추가하세요
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"). 메소드에서 트리거된 이벤트 정의
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은 페이지가 계속 증가하는지 여부를 표시하는 데 사용됩니다
관련 권장 사항:
무한 스크롤 로딩을 달성하기 위한 Vue.js의 모바일 구성 요소 라이브러리 mint-ui에 대한 자세한 설명
vue에서 스크롤하고 더 많은 데이터를 로드하는 기능을 구현하는 방법
Angularjs에서 더 많은 데이터를 스크롤하고 로드하는 방법
위 내용은 element-ui는 테이블 테이블 롤링 로딩을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!