vue2的scroll监听-下拉记载更多
2021/11/16 23:42:03
本文主要是介绍vue2的scroll监听-下拉记载更多,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
## vue的scroll监听
*注意!你的容器得有一定高度,或者说能撑出来滚动条*
通常来说是以下这样子的:
> 添加原生监听
```javascript
// 添加监听
mounted(){
window.addEventListener("scroll", this.scrollHandle);
}
```
> 使用vue官方的v-on监听
```javascript
<template>
<div class="container" v-on:scroll="scrollHandle">
<div class="items"></div>
</div>
</template>
```
> 抑或是再给v-on加上一个修饰词
```javascript
<div class="container" v-on:scroll.native="scrollHandle">
```
**你会发现他们都没有用,这就是vue的"神奇"之处**
最简单正确的使用方法:
> 在addEventListener的第三个参数传入true
```javascript
mounted(){
window.addEventListener("scroll", this.scrollHandle, true);
}
```
就很神奇!!!竟然就可以了?!!
## 实现下拉加载更多
既然监听到了scroll事件,就可以拿到event(虽然这里我没用到event,因为打印出来感觉没啥用),和scrollTop,来实现下拉加载更多的功能。
```JavaScript
/**
* lastScrollTop 上次触发上拉加载之后的scrollTop
* pages 页数,方便从后端请求数据
* loadMore() 加载更多方法
*
*/
scrollHandle(){
let scrollTop = document.documentElement.scrollTop;
let clientHeight = document.documentElement.clientHeight;
if (scrollTop - this.lastScrollTop > 1000) {
// 滚动超过1000加载更多,也可以是800、500
this.loadMore()
console.log("loadmore");
this.lastScrollTop = scrollTop;
this.pages++;
}
}
```
这篇关于vue2的scroll监听-下拉记载更多的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-01Vue.js 是什么-icode9专业技术文章分享
- 2024-11-01Vue3入门教程:从零开始搭建第一个Vue3项目
- 2024-11-01详解vueRouter4基础教程
- 2024-11-01Vuex4课程:初学者的完整入门指南
- 2024-10-31Vue3课程:新手入门到初级掌握
- 2024-10-31Vue3课程:新手入门到初级应用详解
- 2024-10-31VueRouter4课程:新手入门与实战指南
- 2024-10-31Vuex4学习:从入门到初级实战教程
- 2024-10-31Vue3教程:新手入门与基础实战
- 2024-10-31Vue教程:新手快速入门指南