微信小程序 scroll-view 如何实现滚动下拉

在小程序开发过程中,经常会遇到列表滚动加载的效果。当整个页面需要滚动下拉的时候,我们可以借助小程序的生命周期函数 onReachBottom。但是当需要滚动下拉的内容为页面的一部分时,就需要用到 scroll-view 组件了。

在 scroll-view 中有一个函数 bindscrolltolower,会在滚动到底部/右边时触发。

实现原理:

设置一个请求发送的开关,当返回的数据小于设置的每页条数时,关闭请求。

具体实现方法如下:

wxml:

<scroll-view scroll-y="{{true}}" style="width:100%;margin-left:60rpx;height:600px;" bindscrolltolower="lower">
	这里包括着你写的代码
</scroll-view>

JS:

data:{
	page:1,   // 第一页
	list:[],  // 接受列表数据
	flag:true  // 防抖开关 防止用户不停的下拉
}
// 滚动到底触发的方法
lower(){
    if(this.data.flag){
      this.setData({
        flag:false
      })
      this.getData(); // 疯狂的请求的方法
    }
  },
  getData(){
    wx.request({
      url: "你的服务器请求地址",
      data:{
      		page:this.data.page,
      		limit:'10'   // 假设每页10条数据 
        }
      method: 'get',
      success: (result) => {
        var list=this.data.list;
        var page=this.data.page+1;
        list=list.concat(result.data.list);// 拼接回来的数据
      
        this.setData({
            list:list,
            page:page,
        })
        // 当回来的数据小于十条得时候 不让再请求了 否则继续请求
        if(result.data.list.length<10){
          this.setData({
            flag:false
          })
        }else{
          this.setData({
            flag:true
          })
        }
      }
    });
  }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码搬运媛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值