首先要明白定时器的间隔时间是不能直接被修改的;简单来说就是开启定时器后,时间是不能被修改的;
直接上代码
mounted() {
this.timer =setInterval(this.test,this.num)
},
methods: {
stop(){
//点击停止立即清楚进页面时开启的定时器
clearInterval(this.timer);
//开启修改时间的定时器和随机数定时器
let upTime = setInterval(val, this.num);
this.timer =setInterval(this.test,this.num);
let that = this;
function val() {
that.num += 10;
clearInterval(upTime);
clearInterval(that.timer);
if (that.num < 300) {
//开启定时器反复进入val函数,直至间隔时间大于300
that.timer =setInterval(that.test,that.num)
upTime = setInterval(val, that.num)
}
if (that.num >= 300) {
that.a = 6;
that.b = 6;
that.c = 6;
}
}
},
start(){
this.num = 50;
this.timer =setInterval(this.test,this.num)
},
test(){
this.a = parseInt(Math.random()*10)
this.b = parseInt(Math.random()*10)
this.c = parseInt(Math.random()*10)
},
}
主要思路:由于不能直接修改定时器的时间。可以不断的清楚定时器、启动定时器来修改时间