const app = getApp(); var util = require('../../utils/util.js'); var api = require('../../utils/service-api.js'); Page({ /** * 页面的初始数据 */ data: { currentIndex: 0, secondIndex: -1, tabs: [], secondTabs: [], productList: [], offset: 0, limit: 8, }, //用户点击tab时调用 titleClick: function (e) { let currentPageIndex = e.currentTarget.dataset.idx; let secondTabs = this.data.tabs[currentPageIndex].shopProductAttributeList; this.setData({ //拿到当前索引并动态改变 currentIndex: currentPageIndex, secondTabs: secondTabs, secondIndex: -1, }) this.getProduct(); }, onLoad: function (options) { this.getProductAttribute(); }, //获取产品分类 getProductAttribute() { var _this = this; util.request({ api: api.productAttribute.getByCode + "cpfl", callback: function (data) { _this.setData({ tabs: data.rows, secondTabs: data.rows[0].shopProductAttributeList }); //加载产品 _this.getProduct(); } }); }, //选择二级分类产品 chooseSecondCata(e) { var index = e.currentTarget.dataset.index; this.setData({ secondIndex: index }); this.getProduct(); }, // 加载第一页产品数据 getProduct: function () { var _this = this; var limit = _this.data.limit; var currentIndex = this.data.currentIndex; var secondIndex = this.data.secondIndex; var categoryId = this.data.tabs[currentIndex].attrId; if (secondIndex != -1) { categoryId = this.data.tabs[currentIndex].shopProductAttributeList[secondIndex].attrId; } util.request({ api: api.goods.searchGoods, data: { "limit": limit, "categoryId": categoryId, "offset": 0, "shopIds": app.shopInfo.id }, callback: function (data) { _this.setData({ productList: data.rows, }); var productList = _this.data.productList; if (productList.length == 0) { _this.setData({ orderShow: true, }) } else { _this.setData({ orderShow: false }) } } }); }, onTabsItemEvent(e) { var index = e.currentTarget.dataset.index; this.setData({ currentIndex: index, offset: 0 }) this.getProduct(index); }, // 进入详情 intoDetail(e) { var _this = this; var id = e.currentTarget.dataset.id; wx.navigateTo({ url: '/pages/yuyue/yyInfo?model=2&id=' + id, }) }, // 上拉加载 onReachBottom: function () { var _this = this; var limit = _this.data.limit; var offset = _this.data.offset + limit; var currentIndex = this.data.currentIndex; var secondIndex = this.data.secondIndex; var categoryId = this.data.tabs[currentIndex].attrId; if (secondIndex != -1) { categoryId = this.data.tabs[currentIndex].shopProductAttributeList[secondIndex].attrId; } _this.setData({ offset: offset }); util.request({ api: api.goods.searchGoods, data: { "limit": limit, "offset": offset, "categoryId": categoryId, }, callback: function (data) { var productList = _this.data.productList; for (var i = 0; i < data.rows.length; i++) { productList.push(data.rows[i]); } _this.setData({ productList: productList }); } }); }, //预约项目 yuyue(e) { this.checkUserInfoIsBuding() var index = e.currentTarget.dataset.index; var product = this.data.productList[index]; wx.setStorageSync('chooseService', product); wx.switchTab({ url: '/pages/yuyue/khyuyue' }); }, checkUserInfoIsBuding() { if (util.isBlank(getApp().userInfo.nickName)) { wx.navigateTo({ url: '/pages/welcome/welcome?url=/pages/yuyue/khyuyue', }) } else if (util.isBlank(getApp().userInfo.phoneNumber)) { wx.navigateTo({ url: '/pages/phone/phone?url=/pages/yuyue/khyuyue', }) } }, //一键回到顶部 goTap() { util.goTap(); }, //获取滚动条当前位置 onPageScroll: function (e) { // console.log(e) if (e.scrollTop > 400) { this.setData({ floorstatus: true }); } else { this.setData({ floorstatus: false }); } }, })