Verwenden Sie momentJs, um eine Countdown-Komponente zu erstellen (Beispielcode)

Verwenden Sie momentJs, um eine Countdown-Komponente zu erstellen (Beispielcode)

Heute möchte ich einen Countdown von Vue und Moment vorstellen. Der konkrete Inhalt ist wie folgt:

Anzeigestil:

<Vorlage>
    <div Klasse="Tabelle rechts flex-a-center">
        <div Klasse="Zeit-Text">
            <span class="timeTextSpan" v-for="item,index of h" >{{item}}</span>
            <span class="timeTextSpan1" >: </span>
            <span class="timeTextSpan" v-for="item,index of m" >{{item}}</span>
            <span class="timeTextSpan1" >: </span>
            <span class="timeTextSpan" v-for="item,index of s" >{{item}}</span>
        </div>
    </div>
</Vorlage>
<Skript>
Moment aus „Moment“ importieren
Standard exportieren {
  Requisiten: {
    endTime: { }, //Letzte Empfangszeit 2021-12-17 16:29:20
  },
  Daten() {
    //Daten hier speichern return {
      h:'00',
      m:'00',
      s:'00',
      Timer: null
    };
  },
  betrachten:
    Endzeit: {
      handler(e) {
        wenn (e) {
          lass selbst = dies
          Intervall löschen(dieser.Timer)
          dieser.Timer = Intervall festlegen(Funktion(){self.init()},1000)
        }
      },
      tief: wahr,
      sofort: wahr
    }
  },
  montiert() {
    lass selbst = dies
    selbst.init()
    Intervall löschen(dieser.Timer)
    dieser.Timer = Intervall festlegen(Funktion(){self.init()},1000)
  },
  //Methodensammlung methods: {
    init(){
        lass Zeit = Moment(diese.Endzeit).diff(Moment())
        wenn(Zeit <= 0){
          Intervall löschen(dieser.Timer)
          dies.onOver()
          zurückkehren
        }
        sei t = Zeit / 1000;
        let d = Math.floor(t / (24 * 3600)); //Resttage, kannst du bei Bedarf nachholen let h = Math.floor((t - 24 * 3600 * d) / 3600) + d*24; //Keine Tage nötig, wandle Tage in Stunden um let _h = Math.floor((t - 24 * 3600 * d) / 3600) //Tage behalten und Stunden erhalten let m = Math.floor((t - 24 * 3600 * d - _h * 3600) / 60);
        sei s = Math.floor((t - 24 * 3600 * d - _h * 3600 - m * 60));
       
        dies.h = String(h).Länge == 1? '0'+String(h):String(h)
        dies.m = String(m).Länge == 1? '0'+String(m):String(m)
        this.s = Zeichenfolge(n).Länge == 1? '0'+Zeichenfolge(n):Zeichenfolge(n)
    },
    beiÜber() {
      this.$emit('over') //Rückruf, wenn der Countdown endet}
 
  },
  vorZerstören(){
    this.timer = null
    Intervall löschen(dieser.Timer)
  }
}
</Skript>
<Stil lang='less' scoped>
@import url("@/assets/css/supplier.less");
 

  .Tabelle-rechts {
    Schriftgröße: 12px;
    Farbe: #757e8a;
    .timeTextSpan{
      Anzeige: Inline-Block;
      Breite: 14px;
      Höhe: 22px;
      Textausrichtung: zentriert;
      Hintergrund: #F1F0F0;
      Rahmenradius: 2px;
      Rand rechts: 2px;
      Schriftgröße: 16px;
      Farbe: #ff8a2b;
      Schriftstärke: fett;
    }
    .timeTextSpan1{
      Anzeige: Inline-Block;
      Breite: 14px;
      Textausrichtung: zentriert;
      vertikale Ausrichtung: unten;
      Farbe: #202D40;
      Schriftgröße: 16px;
      Schriftstärke: fett;
    }
   
    .Zeittext {
      Rand links: 10px;
    }
  }
</Stil>

Dies ist das Ende dieses Artikels über die Verwendung von MomentJs zum Erstellen einer Countdown-Komponente. Weitere verwandte Inhalte zur MomentJs-Countdown-Komponente finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Vue implementiert CLI 3.0 + Momentjs + Lodash-Verpackungsoptimierung

<<:  Details zur MySQL-Sortierfunktion

>>:  Detaillierte Erklärung der Rahmen- und Regelattribute der Tabelle in HTML

Artikel empfehlen

Detaillierte Prozessanalyse der Docker-Bereitstellung des Snail-Cinema-Systems

Umwelterklärung Host-Betriebssystem: Cetnos7.9 Mi...

So verwenden Sie dynamische Parameter und berechnete Eigenschaften in Vue

1. Dynamische Parameter Ab 2.6.0 können Sie einen...

Zusammenfassung der Probleme bei der Speicherplatzfreigabe unter Linux

Die /Partitionsauslastung eines Servers im IDC is...

Zusammenfassung der Linux-Befehlsmethoden zum Anzeigen verwendeter Befehle

Im System werden viele Befehle verwendet. Wie kön...

So fügen Sie Spalten in einer MySQL-Datenbank hinzu, löschen und ändern sie

Dieser Artikel beschreibt anhand eines Beispiels,...

Interpretation der Vue-Komponentenregistrierungsmethode

Inhaltsverzeichnis Überblick 1. Globale Registrie...

So verwenden Sie Vue zum Implementieren von CSS-Übergängen und Animationen

Inhaltsverzeichnis 1. Der Unterschied zwischen Üb...

Detaillierte Erläuterung der gleichzeitigen Parameteranpassung von MySQL

Inhaltsverzeichnis Abfrage-Cache-Optimierung Über...

JS generiert eindeutige ID-Methoden: UUID und NanoID

Inhaltsverzeichnis 1. Warum NanoID UUID ersetzt 2...