I want to perform a while
loop with one second of interval.
The method which I want to operate is;
new Vue({
el: "#app14",
data: {
dealerCards: [],
},
computed: {
dealerHand() {
return CalcHand(this.dealerCards);
}
},
methods: {
Stand: function() {
while (this.dealerHand < 17) {
this.dealerCards.push(Draw());
console.log("DH: " + this.dealerHand);
}
},
},
});
CalcHand returns the sum of the input array.
I rewrite it with setInterval
function;
var dd = setInterval(function() {
this.dealerCards.push(Draw());
console.log("DH: " + this.dealerHand);
if (this.dealerHand >= 17) {
clearInterval(dd);
return;
}
}, 1000);
However, browser console said this.dealerCards is undefined
. I wonder if you have any idea why this error shows up.
The function of setInterval
should be like this;
var dd = setInterval(() => {
this.dealerCards.push(Draw());
console.log("DH: " + this.dealerHand);
if (this.dealerHand >= 17) {
clearInterval(dd);
}
}, 1000);
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.