移动端处理分页列表,每次处理都要重新思考,比较烦,这里记录一下,以后直接复制:
1、在出发加载更多的方法里面
onReachBottom(e){
//当前页
let page = this.data.page;
//接口返回的总页数大于当前页,则当前页累加
if(this.data.totalPage > page){
page++
this.setData({page});
}
//获取数据
this.getBenefit()
},
2、在获取数据的位置,接口调取成功之后
//接口返回数据
let list = res.data.data;
//如果当前页面缓存列表数据为空,或者当前已缓存列表数据不等于接口返回列表数据总数,说明接口数据没有在缓存中,数据拼接缓存;否则则是数据完全请求并缓存,直接return
if(this.data.list.length == 0 || this.data.list.length != this.data.total){
list = [...this.data.list, ...list]
}else{
return
}
this.setData({
list,
totalPage:res.data.meta.last_page,
total:res.data.meta.total
})