76 lines
1.6 KiB
JavaScript
76 lines
1.6 KiB
JavaScript
let app = getApp();
|
|
var ctime = null;
|
|
|
|
Component({
|
|
externalClasses: ["i-class"],
|
|
properties: {
|
|
stopNotify: {
|
|
type: Boolean,
|
|
value: true,
|
|
observer: function(t){
|
|
t ? (clearInterval(ctime), ctime = null) : this._startReq();
|
|
}
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 组件的初始数据
|
|
*/
|
|
data: {
|
|
userInfo: '',
|
|
hide: false,
|
|
order_id: 0
|
|
},
|
|
|
|
pageLifetimes: {
|
|
hide: function() {
|
|
console.log('notify hide')
|
|
clearInterval(ctime), ctime = null;
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 组件的方法列表
|
|
*/
|
|
methods: {
|
|
_startReq: function(){
|
|
var that = this;
|
|
ctime = setInterval(function(){
|
|
that.getOrderNotify();
|
|
}, 3000);
|
|
},
|
|
getOrderNotify: function (){
|
|
let that = this;
|
|
app.util.request({
|
|
'url': 'entry/wxapp/index',
|
|
'data': {
|
|
controller: 'goods.notify_order'
|
|
},
|
|
dataType: 'json',
|
|
success: function (res) {
|
|
if (res.data.code == 0) {
|
|
let username = res.data.username;
|
|
let avatar = res.data.avatar;
|
|
let order_id = res.data.order_id;
|
|
let userInfo = { username, avatar }
|
|
if (that.data.order_id != order_id){
|
|
that.setData({
|
|
hide: false,
|
|
userInfo,
|
|
order_id
|
|
})
|
|
setTimeout(() => {
|
|
that.setData({ hide: true });
|
|
}, 5000)
|
|
} else {
|
|
!that.data.hide && setTimeout(() => {
|
|
that.setData({ hide: true });
|
|
}, 5000)
|
|
}
|
|
}
|
|
}
|
|
})
|
|
}
|
|
}
|
|
})
|