import { getProductslist, getProductHot } from '../../api/store.js'; const app = getApp(); Page({ /** * 页面的初始数据 */ data: { productList:[], parameter: { 'navbar': '1', 'return': '1', 'title': '商品列表', 'color': true, 'class': '0' }, navH: "", is_switch:true, where: { sid: 0, keyword: '', priceOrder: '', salesOrder: '', news: 0, page: 1, limit: 10, cid: 0, }, price:0, stock:0, nows:false, loadend:false, loading:false, loadTitle:'加载更多', userInfo:{} }, onLoadFun: function (e) { this.setData({ userInfo: e.detail }) }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { this.setData({ ['where.sid']: options.sid || 0, title: options.title || '', ['where.keyword']: options.searchValue || '', navH: app.globalData.navHeight }); this.get_product_list(); this.get_host_product(); }, /** * 商品详情跳转 */ goDetail: function (e) { let item = e.currentTarget.dataset.items; if (item.activity && item.activity.type === "1") { wx.navigateTo({ url: `/pages/activity/goods_seckill_details/index?id=${item.activity.id}&time=${item.activity.time}&status=1` }); } else if (item.activity && item.activity.type === "2") { wx.navigateTo({ url: `/pages/activity/goods_bargain_details/index?id=${item.activity.id}&bargain=${this.data.userInfo.uid}`}); } else if (item.activity && item.activity.type === "3") { wx.navigateTo({ url: `/pages/activity/goods_combination_details/index?id=${item.activity.id}` }); } else { wx.navigateTo({ url: `/pages/goods_details/index?id=${item.id}` }); } }, Changswitch:function(){ var that = this; that.setData({ is_switch: !this.data.is_switch }) }, searchSubmit: function (e) { var that = this; this.setData({ ['where.keyword']: e.detail.value, loadend: false, ['where.page']: 1 }) this.get_product_list(true); }, /** * 获取我的推荐 */ get_host_product: function () { var that = this; getProductHot().then(res=>{ that.setData({ host_product: res.data }); }); }, //点击事件处理 set_where: function (e) { var dataset = e.target.dataset; switch (dataset.type) { case '1': return wx.navigateBack({ delta: 1, }) break; case '2': if (this.data.price == 0) this.data.price = 1; else if (this.data.price == 1) this.data.price = 2; else if (this.data.price == 2) this.data.price = 0; this.setData({ price: this.data.price, stock: 0 }); break; case '3': if (this.data.stock == 0) this.data.stock = 1; else if (this.data.stock == 1) this.data.stock = 2; else if (this.data.stock == 2) this.data.stock = 0; this.setData({ stock: this.data.stock, price: 0 }); break; case '4': this.setData({ nows: !this.data.nows }); break; } this.setData({ loadend: false, ['where.page']: 1 }); this.get_product_list(true); }, //设置where条件 setWhere: function () { if (this.data.price == 0) this.data.where.priceOrder = ''; else if (this.data.price == 1) this.data.where.priceOrder = 'desc'; else if (this.data.price == 2) this.data.where.priceOrder = 'asc'; if (this.data.stock == 0) this.data.where.salesOrder = ''; else if (this.data.stock == 1) this.data.where.salesOrder = 'desc'; else if (this.data.stock == 2) this.data.where.salesOrder = 'asc'; this.data.where.news = this.data.nows ? 1 : 0; this.setData({ where: this.data.where }); }, //查找产品 get_product_list: function (isPage) { let that = this; this.setWhere(); if (that.data.loadend) return; if (that.data.loading) return; if (isPage === true) that.setData({ productList: [] }); that.setData({ loading: true, loadTitle: '' }); getProductslist(that.data.where).then(res=>{ let list = res.data; let productList = app.SplitArray(list, that.data.productList); let loadend = list.length < that.data.where.limit; that.setData({ loadend: loadend, loading: false, loadTitle: loadend ? '已全部加载' : '加载更多', productList: productList, ['where.page']: that.data.where.page + 1, }); }).catch(err=>{ that.setData({ loading: false, loadTitle: '加载更多' }); }); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { this.setData({['where.page']:1,loadend:false,productList:[]}); this.get_product_list(); wx.stopPullDownRefresh(); }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { this.get_product_list(); }, })