In diesem Artikel finden Sie ein Beispiel für die VUE-Komponente: Wie implementiert die VUE-Komponente den Countdown? Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird Ihnen hilfreich sein.
1. Rendering:
2. CSS-Code
.box{ width: 300px; height: 100px; line-height: 100px; margin: 100px auto; background-color: #eee; text-align: center; font-size: 30px; color: #666; }.count-number{ color: red; font-size: 30px; font-weight: bold; }
3 , HTML-Code
<p class="wrap"> <countdown seconds="15" index="1"></countdown> <countdown seconds="30" index="2"></countdown></p>
4. JavaScript-Code
// 倒计时组件 Vue.component('countdown', { props: ['seconds', 'index'], data: () => { return { timerCount: 0 } }, mounted() { this.timing(); }, methods: { timing() { let startTime = localStorage.getItem(`startTime${this.index}`); let nowTime = new Date().getTime(); if(startTime) { let surplus = this.seconds - parseInt((nowTime-startTime) / 1000, 10); this.timerCount = surplus <= 0 ? 0 : surplus; } else { this.timerCount = this.seconds; localStorage.setItem(`startTime${this.index}`, nowTime); } let timer = setInterval(() => { if(this.timerCount > 0 && this.timerCount <= this.seconds) { this.timerCount--; } else { localStorage.removeItem(`startTime${this.index}`); clearInterval(timer); } }, 1000); } }, template: `<div class="box">倒计时 <span class="count-number">{{timerCount < 10 ? '0' + timerCount : timerCount}}</span> 秒</div>` }); // Vue实例 new Vue({ el: '.wrap' });
Verwandte Empfehlungen:
Prototypmechanismus in JS: Vererbung und Erweiterung von Konstruktoren und ihren Instanzen implementierenKommunikation zwischen Vue-Unterkomponenten und übergeordneten Komponenten (mit Code)Das obige ist der detaillierte Inhalt vonBeispiel einer VUE-Komponente: Wie implementiert die VUE-Komponente den Countdown?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!