Паузы в методе vue, пирамиды ханоя
Vue рендерит пирамидки ханоя, алгоритм в методах перекладывает пирамидки. Не соображу как воткнуть setTimeout, чтобы каждый шаг была задержка, а то пирамидки переставляются мгновенно. В ванильном js с setTimeout все сработает, а если вставить его в методс vue, необхобимый результат не получаю, вопрос больше в том, как в функцию из метода запускатьт с задержкой (чтобы при рекурсивном вызове эта задержка срабатывала всегда)
methods: {
hanoi: function (n, from, to) {
//!Сюда бы паузу!
if (n == 1) {
this.store[to - 1].unshift(this.store[from - 1].shift());
console.log("move disk 1! from pin " + from + " to pin " + to);
} else {
let tmp = 6 - from - to;
this.hanoi(n - 1, from, tmp);
this.store[to - 1].unshift(this.store[from - 1].shift());
console.log("move disk " + n + " from pin " + from + " to pin " + to);
this.hanoi(n - 1, tmp, to);
}
},
}
Ответы (1 шт):
Автор решения: Sudo Trololo
→ Ссылка
Вот так работает идеально:
historyLog: function () {
for (let i = 0; i < this.xxx.length; i++) {
setTimeout(() => {
//Код
);
}, 1000 * i); //скорость
}
},