说明:
若果是普通的js页面,直接如下:
定时任务1:
var name= setTimeout(
alert("hello JS"),1000
);
关闭定时任务:clearTimeout(name);
定时任务2:
var name= setInterval(
alert("hello JS"),1000
);
关闭定时任务:
clearInterval(name);
如果是微信小程序页面则不能这样子,因为微信小程序页面有生命周期这一概念,所以关闭小程序页面的定时任务
会有多处需要进行关闭:
代码如下:
page({
data:{
timeName:'', // 此处给定时任务变量初始化值为null
} ,
/**
* 生命周期函数--监听页面显示
*/
onShow: function() {
var that = this;
var status= '';
var timeName= setInterval(function() {
wx.request({
url: '',
data: {
id: that.data.orderId,
},
header: {
'content-type': 'json'
},
method: 'GET',
dataType: 'json',
success: function(res) {
status: res.data.data.status;
if (status == 1) {
wx.navigateTo({//此处页面跳转路径
url: '.',
})
clearInterval(timeName); //取消定时任务
}
},
fail: function(res) {
wx.showModal({
title: '提示',
content: res.data.msg,
})
},
})
}, 30000);
that.setData({
timeNamer: timeName
});
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function() {
var that = this;
clearInterval(that.data.timeNamer); //取消定时任务
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function() {
var that = this;
clearInterval(that.data.timeNamer); //取消定时任务
}
});













