vue 中 elementUI el-table 实现滚动加载

一、需求

  vue 中 elementUI el-table 实现滚动加载,场景:当表格需要显示大量数据时,又想通过一页来进行展示数据。

二、实现方法

  a、监听表格对应的滚动条

  当表格滚动条到达底部时,通过监听触发加载下一页的方法。

  b、代码实现

  关键代码如下:

    // 获取表格对象
let dom = document.querySelector(".el-table__body-wrapper");
dom.addEventListener("scroll", (v) => {
const scrollDistance = dom.scrollHeight - dom.scrollTop - dom.clientHeight;
// 判断是否到底,可以加载下一页
if (scrollDistance <= 1) {
// 判断是否全部加载完成
if (this.page >= this.totalPage) {
this.$message.warning("已经见底了 ~");
}
if (this.page < this.totalPage) {
//当前页数小于总页数就请求
this.page++; //当前页数自增
// 加载下一页方法
this.getNextList();
}
}
});

三、效果图

四、源码下载

以下是完整代码,以及做了优化的用户无感知的滚动加载(两个版本哦~),下载地址:

https://download.csdn.net/download/you199037/15364095

vue 中 elementUI el-table 实现滚动加载的更多相关文章

  1. react中使用antd Table组件滚动加载数据的实现

    废话不多说,直接上代码.一目了然. import React, { Component } from "react"; import { Table } from "an ...

  2. 在Vue中的load或ready的加载时机

    在Vue中的load或ready的加载时机 1.我们来插入一段代码来分析: Js代码如下 <script type="text/javascript"> var app ...

  3. 在vue中使用Echarts画曲线图(异步加载数据)

    现实的工作中, 数据不可能写死的,所有的数据都应该通过发送请求进行获取. 所以本项目的需求是请求服务器获得二维数组,并生成曲线图.曲线图的横纵坐标均从获得的数据中取得. Echarts官方文档: ht ...

  4. 在vue中运用mt-loadmore 实现上拉加载,下拉刷新(完整源码)

    <template> <div class="serverList"> <ul class="scrollModeBox" :st ...

  5. 在vue中运用mt-loadmore 实现上拉加载,下拉刷新

    元旦了,给手残党直接复制的机会,代码如下: 1. :style="{'-webkit-overflow-scrolling': scrollMode}" 最外层div设置,以便兼容 ...

  6. 使用 Angular 和 RxJS 实现的无限滚动加载

    无限滚动加载应该是怎样的? 无限滚动加载列表在用户将页面滚动到指定位置后会异步加载数据.这是避免寻主动加载(每次都需要用户去点击)的好方法,而且它能真正保持应用的性能.同时它还是降低带宽和增强用户体验 ...

  7. vue2.0无限滚动加载数据插件

      做vue项目用到下拉滚动加载数据功能,由于选的UI库(element)没有这个组件,就用Vue-infinite-loading 这个插件代替,使用中遇到的一些问题及使用方法,总结作记录! 安装: ...

  8. 在vue 中 element-ui table结合Popover使用

    在vue 中 element-ui table结合Popover使用 <el-table-column label="操作" > <template slot-s ...

  9. 在element-ui的select下拉框加上滚动加载

    在项目中,我们需要运用到很多来自后端返回的数据.有时是上百条,有时甚至上千条.如果加上后端的多表查询或者数据量过大,这就导致在前端的显示就会及其慢,特别是在网络不好的时候更是如此. 自然,后端就做了一 ...

  10. 记录WEUI中滚动加载的一个BUG

    最近写微信公众号,用到的技术栈是jq+vue的混合开发,采用的UI是移动端比较火的WEUI,在微信开发中应该较广泛.个人看惯了elementUI文档,相对于饿了么组件文档的详细,WEUI的文档还是比较 ...

随机推荐

  1. yb课堂 首页home开发 《三十七》

    Home模块开发 拆分子组件 Home banner videoList 指令属性里面取data里面的数据不用加{{}},html标签内容体中间则需要加双花括号 创建component文件夹 在src ...

  2. Spring(XML方式)简单入门

    环境准备 maven jdk Spring Eclipse 项目创建 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0 ...

  3. 说说RabbitMQ延迟队列实现原理?

    使用 RabbitMQ 和 RocketMQ 的人是幸运的,因为这两个 MQ 自身提供了延迟队列的实现,不像用 Kafka 的同学那么苦逼,还要自己实现延迟队列.当然,这都是题外话,今天咱们重点来聊聊 ...

  4. TypeScript 学习笔记 — 接口的使用(六)

    目录 一.函数接口参数 二.函数类型接口 三.函数混合类型 四.对象接口(最常用) 确定属性 可选属性 任意属性 只读属性 可索引接口 索引访问符 类接口 接口继承 构造函数类型 type 和 int ...

  5. 2024NOI联合省选游记

    人生当中成功只是一时的,而失败却是主旋律. 不太好的的阅读体验 本文作者:xxxalq 所谓游记,顾名思义就是指游玩所记,所以重点在玩而不在省选. 由于没有参加 \(\text{NOIP}\),导致我 ...

  6. Linux 安装LibreOffice及常见问题解决

    Linux 安装LibreOffice及常见问题解决 一 .在官网下载对应的压缩包 官网地址:https://www.libreoffice.org/download/download/ 选择Linu ...

  7. 如何在Linux云服务器上通过Docker Compose部署安装Halo,搭建个人博客网站?

    目录 前置步骤 环境搭建 创建容器组 在系统任意位置创建一个文件夹 创建docker-compose.yaml 启动 Halo 服务 配置反向代理以及域名解析 Halo初始化页面. 更新新版本的hal ...

  8. 【WSDL】03 使用注解自定义服务信息

    对原来的自定义WebService设置注解: package cn.cloud9.jax_ws.server.intf; import javax.jws.WebMethod; import java ...

  9. 【Java】Input,Output,Stream I/O流 04 对象流&序列化

    对象流,序列化机制 ObjectInputStream ObjectOutputStream 序列化 对象 写入转 数据 持久化 反序列化 数据 读取转 对象 活化 - 任何实现了Serializab ...

  10. 【Dos-BatchPrograming】04

    --1.PING 主机联通性检测 Microsoft Windows [版本 10.0.19041.746] (c) 2020 Microsoft Corporation. 保留所有权利. C:\Us ...