1. JS之延时器和定时器
2. uni-app 中清除定时器
注意
:无论是获取短信码,还是在活动页轮询获取当前活动最新信息,都需要用到定时器。但是,定时器如果不及时合理地清除,会造成业务逻辑混乱甚至应用卡死的情况。uni-app 中在某个页面中启动定时器后,一定要在页面关闭时将定时器清除掉。即在页面卸载(关闭)的生命周期函数里,清除定时器。
参考:uni-app 中清除定时器,方法如下:若没有加判断条件和将timer = null,会导致页面卸载的时候无法清空定时器。
onUnload:function(){
if(this.timer) { //在页面卸载时清除定时器有时会清除不了,可在页面跳转时清除
clearInterval(this.timer);
this.timer = null;
}
}
优化:清除时机(在页面卸载时清除定时器有时会清除不了,可在页面跳转时清除)
clearMyTimer:function(){
if(timer) {
console.log("check-清除定时器");
clearInterval(timer);
timer = null;
}
},
logout:function(){
_self.sendRequest({
url : "user/logout",
data : {
mobile : _self.userPhone
},
success:function(res){
_self.clearSession();//清空token
_self.clearMyTimer();//清除定时器
uni.reLaunch({
url: "/pages/login2/login2"
})
},
fail:function(e){},
complete:function(){}
})
},
网友评论