Не могу сообразить до конца как отобразить на vue обратный таймер
Сам код:
(Часть компонента)
data(){
return {
interval: 30,
}
},
methods: {
timer() {
setInterval(function () {
if (this.interval > 0) {
this.interval--
}
//... Как дальше отобразить не могу сообразить
}, 1000);
}
},
mounted() {
this.timer();
}
Пытаюсь отобразить обратный отсчёт:
{{ interval }}
В mounted запускается таймер методом startTimer(). Таймер запускается через setInterval с промежутком 1000 ms. В момент уничтожения компонента, или когда отсчёт дойдет до нуля, таймер нужно будет выключить, поэтому в методе destroyed помещаем stopTimer(). а в блоке watch отслеживаем текущее время, и если оно окажется равным нулю, то останавливаем.
new Vue({
el: '#app',
data: {
currentTime: 5,
timer: null,
},
mounted() {
this.startTimer()
},
destroyed() {
this.stopTimer()
},
methods: {
startTimer() {
this.timer = setInterval(() => {
this.currentTime--
}, 1000)
},
stopTimer() {
clearTimeout(this.timer)
},
},
watch: {
currentTime(time) {
if (time === 0) {
this.stopTimer()
}
}
},
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<p>{{ currentTime }}</p>
</div>
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Я создал сайт "Пряники от енота" на Wordpress
Как правильно настроить MySQL установленный на Windows 10, что-бы иметь возможность подключения к ней с других пк?
Я долго ничего не понимал: почему код css был, но он не выполнялся, хотя всё проверял? Решил запустить просто файл html без сервера django, и он сработалСтили...