/* * 手太欠 * 愿这世界都如故事里一样 美好而动人~ */ Page({ /** * 页面的初始数据 */ data: { scrollLeft : '', // 商品分类 bannerArr : [], // 轮播信息 categorieArr : [], // 分类信息 goodsArr : [], // 商品信息 articlesArr : [], // 公告列表 page : {}, // 分页信息 lodingStats : false,// 加载状态 buy_sku_id : false,// 身份包产品 can_buy : false,// 是否可购买 certification : false,// 是否已认证 }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { if(options.invite){ getApp().globalData.invite = options.invite || null }else{ let sceneCode = options.scene || null if(sceneCode != null ){ let inviteCode = decodeURIComponent(sceneCode) let invite = inviteCode.match(new RegExp("(^|&)" + 'invite' + "=([^&]*)(&|$)", "i")); getApp().globalData.invite = invite[2] || null } } }, /** * 生命周期函数--监听页面显示 */ onShow() { // 获取banner信息 this.bannerInfo(); // 获取商品分类 this.categorieInfo(); // 获取商品列表 this.goodsInfo(); // 获取公告列表 this.articlesInfo(); // 获取身份包产品 this.getidpackage() }, /** * 身份包 */ getidpackage(){ wx.$api.mall.idpackage().then(res => { let { buy_sku_id, can_buy, certification } = res.data this.setData({ buy_sku_id, can_buy, certification }) }) }, /** * banner信息 */ bannerInfo() { wx.$api.mall.Banner().then(res => { this.setData({ bannerArr: res.data }) }) }, /** * 商品分类信息 */ categorieInfo() { wx.$api.mall.Categorie().then(res => { this.setData({ categorieArr: res.data }) }) }, /** * 商品列表信息 */ goodsInfo(page) { wx.$api.mall.Goods({ page : page || 1 }).then(res => { let listArr = this.data.goodsArr, newData = [] if(page == 1 || page == undefined) listArr = [] newData = listArr.concat(res.data.data) this.setData({ goodsArr : newData, page : res.data.page, lodingStats : false }) wx.stopPullDownRefresh() }) }, /** * 获取公告列表 */ articlesInfo() { wx.$api.mall.articles().then(res => { this.setData({ articlesArr: res.data.data }) }) }, /** * 分类选择 */ tabsTap(e) { let newOffsetLeft = e.currentTarget.offsetLeft, newScrollLeft = '' if(newOffsetLeft < 270) { newScrollLeft = 0 } else { newScrollLeft = newOffsetLeft - this.data.scrollViewWidth / 2 + 40 } this.setData({ scrollLeft: newScrollLeft, categoryId: e.currentTarget.dataset.id }) }, /** * 购买产品包 */ onCapsule(){ if(wx.getStorageSync("token") != ''){ if(!this.data.certification){ wx.showModal({ title : '提示', content : '您还未完成账号实名认证,暂不可购买', cancelText : '稍后', cancelColor : '#333', confirmText : '去认证', confirmColor : '#da2b54', success : res => { if(res.confirm){ wx.navigateTo({ url: '/pages/idcard/idcard', }) } } }) return } wx.navigateTo({ url: '/pages/mall/confirm/confirm?qty=1&skuId=' + this.data.buy_sku_id }) return } wx.navigateTo({ url: "/pages/login/index" }) }, /** * 开通vip */ onVip(){ if(wx.getStorageSync("token") != ''){ wx.navigateTo({ url: '/pages/idcard/idcard', }) return } wx.navigateTo({ url: "/pages/login/index" }) }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { // 获取商品列表 this.goodsInfo(); }, /** * 上拉加载 */ onReachBottom(){ this.setData({ lodingStats: true }) let pageNumber = this.data.page.current if(this.data.page.has_more){ pageNumber++ // 获取商品列表 this.goodsInfo(pageNumber); } } })