微信小程序上拉刷新分页
Page({
data: {
// 前台显示list(你需要wx:for的数据)
showlist: [],
// 当前页
pageNumber: 1,
// 总页数
totalPage: 1,
},
onLoad: function (options) {
var that = this;
// 请求后台
// 获取第一页的list及总页数
wx.request({
//你的地址
url: ‘’,
//你的必须参数
data: {
},
success: function (res) {
//注意一定要有总页数,如果没有就用总数/每页数向上取整算
//showlist展示数据就是你获取的数据,没什么可说的。
that.setData({
showlist: res.data.data.info,
totalPage: res.data.totalPage,
})
},
fail: function (res) {
}
})
},
/**
页面上拉触底事件的处理函数
*/
onReachBottom: function () {
var that = this;
// 当前页+1,因为这时候已经触底了需要+1
var pageNumber = that.data.pageNumber + 1;
// 将现在的页数返回
that.setData({
pageNumber: pageNumber,
})
//进行判断,如果当前的页数小于或等于最大页数,执行
if (pageNumber <= that.data.totalPage) {
//这只是怕卡人家不知道,加的一个加载动画
wx.showLoading({
title: ‘加载中’,
})
// 请求后台,获取下一页的数据。data{}里前面的pageNumber是你接口的页数参数
// 你在浏览器上打上你的网址?pageNumber=2显示的是第二页的数据,pageNumber是后台给的参数
// 后面的pageNumber就是方法中var的变量
wx.request({
url: ‘’,
data: {
pageNumber: pageNumber,
},
success: function (res) {
//就是获取成功后停止加载动画用的。
wx.hideLoading()
// 将新获取的数据 res.data.list,concat到前台显示的showlist中即可。
// 返回数据就是获取本页data中的数据在.concat()拼接上一个这次请求参数获取到的数据,具体的res.什么根据数据来。
that.setData({
showlist: that.data.showlist.concat(res.data.data.info)
})
},
})
}
}
})
也是接触微信小程序没多久的新人,希望大家一起交流。