yuminge-app/yun-min-program-plugin-master/packageH/stock/guide/guide.js

136 lines
3.0 KiB
JavaScript

// packageH/stock/guide/guide.js
const App = getApp();
Page({
/**
* 页面的初始数据
*/
data: {
showExplainPopup: false,
goodsList: [],
searchGoodsList: null,
sets: null,
loading: false,
isMoreData: true,
page: 1,
searchInputKeyword: "",
is_retail:false
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
if(options.target == 'retail'){
wx.setNavigationBarTitle({
title: '零售',
});
this.setData({
is_retail:true
});
}else{
wx.setNavigationBarTitle({
title: '订货',
});
this.setData({
is_retail:false
});
}
this.getGoods();
},
onShareAppMessage() {},
onShareTimeline() {},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
this.getGoods();
},
displayExplainPopup() {
this.setData({
showExplainPopup: true,
});
},
closeExplainPopup() {
this.setData({
showExplainPopup: false,
});
},
viewGoods(event) {
let _url = "/packageA/detail_v2/detail_v2?id=" + event.target.dataset.id;
if(this.data.is_retail){
_url = _url +'&fromStock=2';
}else{
_url = _url +'&fromStock=1';
}
wx.navigateTo({ url: _url });
},
getGoods() {
if (this.data.loading === true || this.data.isMoreData === false) {
return;
}
wx.showLoading({
title: "加载中",
mask: true,
});
this.setData({
loading: true,
});
let urlStr = App.getNetAddresss("plugin.agency.api.goods.goods-list");
urlStr += "&page=" + this.data.page;
urlStr += "&is_retail=" + this.data.is_retail;
App._postNetWork({
url: urlStr,
success: ({ data: { data, result, msg } }) => {
if (result === 0) {
wx.hideLoading();
wx.showToast({
title: msg,
success: (result) => {
wx.redirectTo({
url: "/packageG/member_v2/member_v2",
});
},
});
return;
}
const setData = {};
if (this.data.sets === null) {
setData["sets"] = data.set;
}
if (
data.current_page === data.last_page ||
data.data.length === 0 ||
data.data.length < data.per_page
) {
setData["isMoreData"] = false;
}
let goodsList = this.data.goodsList;
goodsList.push(...data.data);
setData["goodsList"] = goodsList;
setData["page"] = this.data.page + 1;
setData["loading"] = false;
this.setData(setData);
wx.hideLoading();
},
});
},
searchGoods(event) {
const keyword = event.detail;
let searchResult = this.data.goodsList.filter((item) => {
return item.title.indexOf(keyword) !== -1;
});
this.setData({
searchGoodsList: searchResult,
});
},
cancelSearch(){
this.setData({
searchGoodsList: null,
});
}
});