import { onMounted, onBeforeUnmount, ref } from 'vue';
const logs = ref(null) // 绑定到滚动的盒子上
onMounted(() => {
window.addEventListener('scroll', handleScroll, true);
})
onBeforeUnmount(() => {
window.removeEventListener('scroll', handleScroll, true);
})
const handleScroll = () => {
// 总数据条数大于当前已加载条数
if (state.logsTotal > state.logsArr.length) {
var scrollHeight = logs.value.scrollHeight
var scrollTop = logs.value.scrollTop
var clientHeight = logs.value.clientHeight
//滚动条滚到最底部
if (scrollHeight - clientHeight == scrollTop) {
... // 在这里调用加载数据的方法
}
}
}
vue3 滚动到底部触发方法
于 2023-07-31 16:30:13 首次发布
该代码示例展示了在Vue应用中如何监听窗口滚动事件,并在用户滚动到页面底部时加载更多数据。它使用onMounted和onBeforeUnmount生命周期钩子来添加和移除事件监听器,以及一个名为handleScroll的函数来判断是否达到滚动底部并触发数据加载。
2693





