// packageA//pages/myGift/myGift.js const app = getApp(); let self = null; Page({ /** * 页面的初始数据 */ data: { tabArr: ['礼包列表', '我的礼包'], currentIndex: 0, list: null, isLoading: false, // 检测是否已经发送请求,防止重复发送请求 noMore: false, // 检测是否有更多数据,true为没有更多数据,false为还有数据 pageNum: 1, // 当前页数 }, clickTab(e) { let index = e.target.dataset.index; let url = ''; let data = { store_id: app.globalData.setting.stoid, }; this.setData({ list: null, pageNum: 1, noMore: false, currentIndex: index, }); if(index == 0) { url = '/api/weshop/libao/libaoFormvip/page'; } else if(index == 1) { url = '/api/weshop/libao/libaoForm/page'; data.user_id = app.globalData.user_id; }; this.getData(true, url, data); }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { self = this; app.isLogin().then(function(data) {//进入页面前已经授权登录成功 self.setData({ userInfo: data, }); }); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { if(app.globalData.userInfo) { if(!this.data.isLogin) { this.setData({ userInfo: app.globalData.userInfo, imghost: app.globalData.setting.imghost, isLogin: true, }); this.getData(true, '/api/weshop/libao/libaoFormvip/page', { store_id: app.globalData.setting.stoid, user_id: app.globalData.user_id, }); }; }; }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { this.scrollToLower('/api/weshop/libao/libaoFormvip/page', { store_id: app.globalData.setting.stoid, user_id: app.globalData.user_id, }); }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, /** * 请求数据 */ getData: function(isInit, url, data) { app.request.promiseGet(url, { data: data, isShowLoading: true, }) .then(function(res) { if(res.data.code == 0) { self.setData({ isLoading: false }); if(isInit) {// 第一次加载 self.setData({ list: res.data.data }); } else { self.setData({ 'list.pageData': self.data.list.pageData.concat(res.data.data.pageData) }); }; if((res.data.data.pageData.length == 0) || (res.data.data.pageSize * res.data.data.page >= res.data.data.total)) { self.setData({ noMore: true }); }; } else { self.setData({ 'list.pageData': [] }); }; }) .catch(function(err) { console.log('出错拉!!!!',err); self.setData({ 'list.pageData': [] }); }); }, /** * 上拉加载 */ scrollToLower(url, requestData) { // 数据总量 let total = this.data.list.total; // 单页最大数据量 let pageSize = this.data.list.pageSize; // 如果数据总量不为0且小于或等于单页最大数据量,说明数据已全部加载,显示‘没有更多了’ if((total != 0)&&(total <= pageSize)) { this.setData({ noMore: true }); }; if(!this.data.isLoading && !this.data.noMore) { this.setData({ isLoading: true, pageNum: this.data.pageNum + 1 }); requestData.page = this.data.pageNum; this.getData(false, url, requestData); }; }, /** * 点击跳转 */ goto(e) { let url = ''; if(e.target.dataset.url) { url = e.target.dataset.url; } else { url = e.currentTarget.dataset.url; } app.goto(url); }, })