setTimeout() 與setInterval()
阿新 • • 發佈:2018-11-09
setTimeout() 方法用於在指定的毫秒數後呼叫函式或計算表示式。
改變this作用域的三種方法(3s置空):
1.繫結
setTimeout(function () {
this.$store.dispatch("setErrMsg", '');
}.bind(this), 3000)//繫結外層的this
- 箭頭函式
setTimeout(() =>{
this.$store.dispatch("setErrMsg", '');
}, 3000 )
- proxy屬性,需要引入jquery
setTimeout($.proxy(function () {
this.$store.dispatch("setErrMsg", '');
}, this), 3000)//繫結外層的this
setInterval() 方法可按照指定的週期(以毫秒計)來呼叫函式或計算表示式。 setInterval() 方法會不停地呼叫函式,直到 clearInterval() 被呼叫或視窗被關閉。
if (msg.action == "mainteacherstartvote") {
this .voteTimer = setInterval(() => {
this.$store.dispatch("voteMethod"); //載入投票結果介面
}, 5000);
}
} else if (msg.action == "mainteacherendvote") {
//結束投票
//關閉5s計時
clearInterval(this.voteTimer);
console.log("結束投票");
}