当前位置:   article > 正文

Vue2 使用el-table-infinite-scroll_v-el-table-infinite-scroll

v-el-table-infinite-scroll

为什么要使用el-table-infinite-scroll

列表数据太多,后端又不好分页,一次性加载大量的数据渲染视图会导致页面卡顿,这时候就需要用到el-table-infinite-scroll来“分批”渲染,如:进入页面先渲染视图可见的10条数据,监听element的滚动条时间,滑到底部时渲染接下来的10条数据,以此类推

需要安装三个插件

  1. // Vue2项目中尝试使用的V3.0但是不行,所以安装V2版本的
  2. npm i el-table-infinite-scroll@2 --save
  3. //另外还需要安装@vue/composition-api、 core-js
  4. npm i @vue/composition-api --save
  5. npm i core-js --save

参考版本

引入插件

局部引入

  1. <script>
  2. import elTableInfiniteScroll from 'el-table-infinite-scroll';
  3. export default{
  4.     directives: {
  5.     'el-table-infinite-scroll': elTableInfiniteScroll
  6.     },
  7. }
  8. </script>

elementui中使用

  1. <el-table :data="visiableData"
  2. style="width: 100%"
  3. height="100%"
  4. tooltip-effect="light"
  5. v-el-table-infinite-scroll="loadMore"
  6. >
  7. </el-table>
  1. loadMore(){
  2. this.pager.pageNum ++
  3.       // slice切分数据
  4. this.visiableData = this.data.slice(0, this.pager.pageNum * this.pager.pageSize)
  5. },

注意一个坑:v-el-table-infinite-scroll="loadMore",如果写成是 v-el-table-infinite-scroll="loadMore()",会导致无限循环至页面崩溃......

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/193961
推荐阅读