// pages/welfareMall/coupon/coupon.js import WelfareMall from '../../../api/welfareMall' import {getMobileCache, getPhoneNumber as getPhoneNumberSync} from '../../../utils/user' Page({ /** * 页面的初始数据 */ data: { page: 1, pageSize: 10, lock: false, noResult: false, noMore: false, type:0, couponList: [] }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { this.getCouponList(); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { if (this.data.lock || this.data.noMore) { return } this.data.lock = true this.data.page++ this.getCouponList(); }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, showCoupon:function(e){ console.log(e) this.setData({ type:parseInt(e.currentTarget.dataset.type), couponList:[], noResult:false, noMore:false, page:1 }) this.getCouponList() }, // 券包数据 0 待使用 1 已使用 2 已过期 getCouponList: async function() { let res = await WelfareMall.getUserCouponSnList({ page: this.data.page, pageSize: this.data.pageSize, mobile: getMobileCache(), stateList:[this.data.type] }).then(res => { if (res.code == 200) { this.userCouponListView(res.data) } this.data.lock = false }).catch(_ => { console.log(_) this.data.lock = false }) }, userCouponListView: function(data) { if (!Array.isArray(data) || data.length == 0) { console.log("订单列表数据为空"); if (this.data.page == 1) { this.setData({ mobileTop:getMobileCache(), noResult: true }) } else { this.setData({ mobileTop:getMobileCache(), noMore: true }) } return } data.forEach(v => { let beginTime = v.couponBeginTimestamp let endTime = v.couponEndTimestamp v.couponStartTime = beginTime * 1000 v.couponEndTime = endTime * 1000 v.title = v.couponTitle v.isSn = true }) this.data.couponList = this.data.couponList.concat(...data) this.setData({ mobileTop:getMobileCache(), couponList: this.data.couponList }) } })