102 lines
2.2 KiB
JavaScript
102 lines
2.2 KiB
JavaScript
// pages/mine/product/productmanage/searchproduct.js
|
|
const app = getApp()
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
CustomBar: app.globalData.CustomBar,
|
|
goodsList: [],
|
|
baseImageUrl: app.urls.baseImgUrl,
|
|
shopId: '',
|
|
countTime: 2000, //延迟搜索 时间
|
|
searchWaiting: false, //是否等待搜索倒计时中,
|
|
searchKey: ''
|
|
},
|
|
/**
|
|
* 获取商品列表
|
|
*/
|
|
getGoodsList(keywords) {
|
|
wx.showLoading({
|
|
title: '加载中...',
|
|
})
|
|
var _self = this
|
|
app.http.get(app.urls.getShopGoodsList.format({
|
|
shopId: _self.data.shopId
|
|
}), {
|
|
header: {
|
|
token: app.globalData.token
|
|
},
|
|
data: {
|
|
keywords: keywords
|
|
}
|
|
})
|
|
.then(res => {
|
|
wx.hideLoading({})
|
|
_self.setData({
|
|
isRefreshing: false
|
|
})
|
|
_self.setData({
|
|
goodsList: res.data.rows
|
|
})
|
|
})
|
|
.catch(err => {
|
|
wx.hideLoading({})
|
|
})
|
|
},
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad: function (options) {
|
|
this.setData({
|
|
shopId: options.shopId
|
|
})
|
|
},
|
|
manageGoods(e) {
|
|
wx.navigateTo({
|
|
url: './productmanage?shopGoodsId=' + e.currentTarget.dataset.item.goodsId,
|
|
})
|
|
},
|
|
searchGoods(e) {
|
|
this.setData({
|
|
countTime: 2000,
|
|
searchKey: e.detail.value,
|
|
})
|
|
//是否处于搜索倒计时中
|
|
if (!this.data.searchWaiting) {
|
|
this.timer();
|
|
}
|
|
},
|
|
/**
|
|
* 延迟搜索
|
|
*/
|
|
timer() {
|
|
var that = this;
|
|
this.setData({
|
|
searchWaiting: true
|
|
})
|
|
|
|
let promise = new Promise((resolve, reject) => {
|
|
let setTimer = setInterval(
|
|
() => {
|
|
console.log('搜索倒计时: ' + that.data.countTime);
|
|
this.setData({
|
|
countTime: this.data.countTime - 1000
|
|
})
|
|
if (this.data.countTime <= 0) {
|
|
console.log('开始搜索: ' + that.data.params);
|
|
this.setData({
|
|
countTime: 2000,
|
|
searchWaiting: false,
|
|
})
|
|
resolve(setTimer)
|
|
}
|
|
}, 1000)
|
|
})
|
|
promise.then((setTimer) => {
|
|
this.getGoodsList(this.data.searchKey)
|
|
clearInterval(setTimer) //清除计时器
|
|
})
|
|
},
|
|
}) |