猿问

新手上路,如何让这个定时器停止运行?怎么回事哈啊?

为什么下面这样写不行?
changedanmu(){
lettimer=setInterval(()=>{
console.log(1)
},1000)
if(this.data.flag){
console.log(2)
clearInterval(timer)
}
}
翻阅古今
浏览 283回答 2
2回答

慕姐4208626

changedanmu运行的时候,第一步声明定时器,第二步判断this.data.flag,这里就只是在这里运行了一次。所以你应该把if判断放到定时器里面,即changedanmu(){lettimer=setInterval(()=>{console.log(1)if(this.data.flag){console.log(2)clearInterval(timer)}},1000)}

米琪卡哇伊

lettimerchangedanmu(){timer=setInterval(()=>{console.log(1)if(this.data.flag){console.log(2)clearInterval(timer)}},1000)}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答