欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 锐评 > Vue3+Element Plus 实现 el-table 表格组件滚动是否触底监听判断

Vue3+Element Plus 实现 el-table 表格组件滚动是否触底监听判断

2025/11/5 8:45:06 来源:https://blog.csdn.net/Alan_Walker688/article/details/145299722  浏览:    关键词:Vue3+Element Plus 实现 el-table 表格组件滚动是否触底监听判断

问题描述

Element Plus 中的 el-table 组件暴露出了 scroll 事件,表格被用户滚动后会触发,暴露出横向和竖向的滚动距离,未暴露出表格的DOM对象。

({ scrollLeft: number, scrollTop: number }) => void

此时,可以通过表格的引用对象 tableRef 来获取表格可视化区域高度 scrollHeight 和表格总高度 clientHeight,然后判断滚动距离 scrollTopscrollHeight 之和是否大于 clientHeight 来判断是否竖向滚动触底。

解决方法

<template><el-table ref="tableRef" @scroll="handleScroll"></el-table>
</template>
<script setup>
import { ref } from 'vue'// 表格引用
const tableRef = ref(null)/*** 处理用户滚动表格*/
const handleScroll = (e) => {// 拖动横向滚动条则不处理if (e.scrollTop == 0) {return}// 可视区域的高度const scrollHeight = tableRef.value.$refs.bodyWrapper.scrollHeight// 表格的总高度,包括不可见部分const clientHeight = tableRef.value.$refs.tableBody.clientHeight// 是否触底判断const isBottom = scrollHeight + e.scrollTop >= clientHeightif (isBottom) {console.log('表格滚动触底了')}
}
</script>

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词