当鼠标滑到一定距离向后台请求数据

先说需求:
一个下拉框,后台返回我数据,但是需要无限滑动,后端给定的一个字段是size:12 依次+12,就可以获的12条数据。

前端需要做的就是,当我快滚动到底部的时候,向后台发送size=size+12 的数据,获得数据。

首先在vue环境下

mounted() { 
            window.addEventListener("scroll", this.handleScroll, true);
        },


         methods:{
         handleScroll(e) {
                if (e.path.length > 2) {
                  let scrollTop = e.target.scrollTop;
                  let scrollHeight = e.target.scrollHeight;
                  let viewHeight = 700;
                  if (scrollHeight - scrollTop < viewHeight) {
                    if(this.can){
                        this.can = false    //在data里声明一个can 控制重复向后台发送请求
                        this.srollThing()  //当滚动到这里的时候开始准备发送请求了
                    } 
                  } else {
                  }
                }
            },         
      
           //滚动后
            srollThing(){
                this.sizess = this.sizess +12
                let data = {
                    sizes : this.sizess
                }   
                this.getDataList(data)    //请求的数据方法
            },
            getDataList(data){
                    //发送请求部分略,但是当请求回来的时候,记得给can==true!!!
            }
       }

  

posted on 2019-12-10 11:06  JiAyInNnNn123  阅读(275)  评论(0编辑  收藏  举报

导航