>  기사  >  웹 프론트엔드  >  element-ui는 테이블 테이블 롤링 로딩을 구현합니다.

element-ui는 테이블 테이블 롤링 로딩을 구현합니다.

小云云
小云云원래의
2018-03-03 10:41:314701검색

이 글은 주로 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.