码迷,mamicode.com
首页 > 其他好文 > 详细

vue中使用@scroll实现分页处理(分页要做节流处理)

时间:2019-11-01 12:34:34      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:多个   The   size   执行   wait   methods   判断   scrolltop   滚动条事件   

监听@scrll滚动条事件
<div class="hhhh" @scroll="page($event)"> <div>所要滚动的内容</div> </div>

设置一个开关为分页节流做处理(不节流回一次加载多个page次数)

data(){
return{
falg:true
}
}

 

在methods中做分页处理:

 methods: {
created(){
this.List()
} async List(){ const result
= await this.$api.bbb(this.page, this.pageSize); if(resulit){ //请求数据成功 this.list=[...this.list,...result.data] //分页节流判断 this.falg=false }else{ //请求失败 } } //分页处理 page(e) { let Scroll = e.target; let scrollHeight = Scroll.scrollHeight - Scroll.clientHeight; if (scrollHeight - Scroll.scrollTop < 100 && !falg) { this.falg = true; this.page++; this.List(); } }, }

分页的节流:设置一个开关,如果为false时进入触发page++,执行List(),并且触发前设置开关为true,并且在List()函数里设置开关为false,(开关为true不能执行分页,为false执行分页)

vue中使用@scroll实现分页处理(分页要做节流处理)

标签:多个   The   size   执行   wait   methods   判断   scrolltop   滚动条事件   

原文地址:https://www.cnblogs.com/Angiy/p/11776169.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!