小程序向后台请求数据太多,加载太慢,通过上拉加载实现分页
有时候我们在向后台发送请求的时候,后台由于数据量大,一下返回的数
据很多,造成小程序端的加载很慢。当我们遇到这种情况的时候我们可以考
虑修改后台,就是小程序端携带一个page参数像后台发起请求,让后台根据
传过来的page值来返回相应的数据,但是呢,除了这个方法,还有一个方法
就是直接不修改后台,在小程序端也可以实现,就是通过上拉加载跟多来实
现对后台返回数据的分页,具体就是通过小程序的onReachBottom来实现的
下面是具体的代码实例:
js:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200108114728281.png)
onReachBottom: function () {
var that = this
if(that.data.page==1){
} else if(that.data.page>1){
that.setData({
up_show:true
})
}
wx.showLoading({
title: '玩命加载中',
})
wx.request({
url: 'http://192.168.1.107:8080/wx/home/moregoods',
success: function (res) {
var list = that.data.goodsList
var page = that.data.page
var n = that.data.n
if ((page+1) < Math.ceil(res.data.length/n)){
var list1 = res.data.slice((page) * n, (page+1) * n)
var goodsList = list.concat(list1)
console.log(goodsList)
that.setData({
goodsList: goodsList
});
page++;
that.setData({
page: page
})
wx.hideLoading();
}
}
});
},
当然了,还需要在app.json或者是具体的page文件中的json文件中加上
"onReachBottomDistance": 50。