小程序
小游戏
企业微信
微信支付
扫描小程序码分享
a() { setTimeout(function () { /.. 若干代码 ../ this.a() }, 5000) },
在a页面每隔固定的时间要执行一次a函数,但是当使用redirectTo跳转到b页面时,a函数还是会不停地递归调用自己,clearInterval也不能关闭
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
递归里头写跳出递归的语句试试。
你可以这样做
a() { const _timer = setTimeout(() => { if(_timer){ clearTimeout(_timer) } if('如果未达到结束条件则继续递归'){ this.a() } }, 5000) // 保存当前引用,方便全局清除 this.timer = _timer } // 页面销毁处 onUnload(){ // 清除 if(this.timer){ clearTimeout(this.timer) } }
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
递归里头写跳出递归的语句试试。
你可以这样做
a() { const _timer = setTimeout(() => { if(_timer){ clearTimeout(_timer) } if('如果未达到结束条件则继续递归'){ this.a() } }, 5000) // 保存当前引用,方便全局清除 this.timer = _timer } // 页面销毁处 onUnload(){ // 清除 if(this.timer){ clearTimeout(this.timer) } }