uni-app 中清除定时器实现方法详解

2023-12-01 0 702
目录
  • uni-app 中清除定时器
  • 参考方法
    • 定时器的方法
    • 清除定时器方法

uni-app 中清除定时器

JS之延时器和定时器

注意:

无论是获取短信码,还是在活动页轮询获取当前活动最新信息,都需要用到定时器。但是,定时器如果不及时合理地清除,会造成业务逻辑混乱甚至应用卡死的情况。

uni-app 中在某个页面中启动定时器后,一定要在页面关闭时将定时器清除掉。即在页面卸载(关闭)的生命周期函数里,清除定时器。

参考方法

定时器的方法

定时器一般有两个

1)setTimeout();//n毫秒后执行一次

2)setInterval();//每隔n秒执行一次

这两个方法都有个返回值,返回一个定时器id,可以定义一个变量接收

清除定时器方法

setTimeout()对应的是 clearTimeout(id);

setInterval()对应的是 clearInterval(id);

例如:

var time = setInterval(\”lunRight()\”,3000);//自动轮播
box.onmouseover=function(){
clearInterval(time);
}//鼠标移入轮播图时取消自动轮播
var i = setTimeout(function(){
},1000); //setTimeout 1000ms后执行1次
clearTimeout(i); //清除Timeout的定时器,传入id(创建定时器时会返回一个id)

若没有加判断条件和将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(){}
})
},

以上就是uni-app 中清除定时器的详细内容,更多关于uni-app 清除定时器的资料请关注悠久资源网其它相关文章!

您可能感兴趣的文章:

  • uni-apph5端在jenkins构建报错解决
  • 在uni-app中使用element-ui的方法与报错解决
  • uni-app小程序分享功能实现方法举例
  • uni-app动态修改导航栏标题简单步骤
  • Uni-app返回上一页面并携带参数的实现方法
  • uni-app操作数据库的三种方法总结
  • 解决uni-app报错Error:readEBADFatPipe.onStreamRead…

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 JavaScript uni-app 中清除定时器实现方法详解 https://www.u-9.cn/biancheng/javascript/4554.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务