You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.4 KiB
68 lines
1.4 KiB
// pages/shoplist/shoplist.js
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
shopList: [],
|
|
},
|
|
listDate: {
|
|
page: 1,
|
|
pageSize: 10,
|
|
total: 0
|
|
},
|
|
getShopList: function (cb) {
|
|
this.isLoading = true
|
|
wx.showLoading({
|
|
title: '数据加载中...'
|
|
})
|
|
wx.request({
|
|
url: 'http://127.0.0.1:3000/data',
|
|
method: 'GET',
|
|
data: {
|
|
page: this.listDate.page,
|
|
pageSize: this.listDate.pageSize
|
|
},
|
|
success: res => {
|
|
console.log(res)
|
|
this.setData({
|
|
shopList: [...this.data.shopList, ...res.data],
|
|
})
|
|
this.listDate.total = res.header['X-Total-Count'] - 0
|
|
},
|
|
complete: () => {
|
|
wx.hideLoading()
|
|
this.isLoading = false
|
|
cb && cb()
|
|
}
|
|
})
|
|
},
|
|
onLoad: function () {
|
|
this.getShopList()
|
|
},
|
|
onReachBottom: function () {
|
|
if (this.listDate.page * this.listDate.pageSize >= this.listDate.total){
|
|
return wx.showToast({
|
|
title: '数据加载完毕!',
|
|
icon: 'none'
|
|
})
|
|
}
|
|
if (this.isLoading) {
|
|
return
|
|
}
|
|
++this.listData.page
|
|
this.getShopList()
|
|
},
|
|
isLoading: false,
|
|
onPullDownRefresh: function () {
|
|
this.setData({
|
|
shopList: []
|
|
})
|
|
this.listData.page = 1
|
|
this.listData.total = 0
|
|
this.getShopList(() => {
|
|
wx.stopPullDownRefresh()
|
|
})
|
|
}
|
|
}) |