Vue implementiert die Countdown-Komponente für zweite Kills

Vue implementiert die Countdown-Komponente für zweite Kills

In diesem Artikel wird der spezifische Code von Vue zur Implementierung der zweiten Kill-Countdown-Komponente zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt

Unten ist die Countdown-Komponente für den zweiten Kill mit Vue

Entwicklungsideen

1. Fordern Sie den Server auf, die aktuelle Serverzeit abzurufen (basierend auf der Serverzeit).
2. Rufen Sie die aktuelle Computerzeit des Benutzers ab und vergleichen Sie sie mit der Serverzeit, um die Zeitdifferenz zu ermitteln. Die endgültige Zeit ist die aktuelle Computerzeit abzüglich der Zeitdifferenz (definiert als aktuelle Serverzeit).
3. Legen Sie die Startzeit des Flash-Sales fest
4. Vergleichen Sie die Flash-Sale-Zeit mit der aktuellen Serverzeit, um den Zeitunterschied zu ermitteln (insgesamt X Sekunden).
5. Berechnen Sie auf der Grundlage von X Sekunden die Anzahl der Tage, Stunden, Minuten und Sekunden bis zum Beginn des Flash-Sales.

Code-Implementierung

Der folgende Code zeigt nur die Schritte 4 und 5.

Komponente CountDown.vue

<Vorlage>
  <div>
      <input type="datetime-local" :min="currentTime" placeholder="Bitte geben Sie die Startzeit des Flash-Sales ein" v-model="startTime">
      <button @click="submit">Zeitmessung starten</button>
  </div>
  <div>
      <h1>{{ Countdown-Zeit }}</h1>
  </div>
</Vorlage>

<Skript>
lass Timer = null;
let tipTextPrefix = 'Verbleibende Zeit bis zum Beginn des Flash-Sales: ';
Moment aus „Moment“ importieren;
Standard exportieren {
    Name: 'CountDown',
    Daten() { return {
        currentTime: moment().format('YYYY-MM-DDTHH:mm'), // Bitte verwenden Sie die in den Schritten 1-3 berechnete Serverzeit startTime: moment().format('YYYY-MM-DDTHH:mm'),
        countDownTime: tipTextPrefix + '0 Tage 0 Stunden 0 Minuten 0 Sekunden'
    }},
    Methoden: {
        senden: function() {
            const _this = dies;
            Intervall löschen(Timer);
            Timer = Intervall festlegen(() => {
                _this.countDownTime = _this.countDown();
            }, 1000);
        },
        countDown: Funktion() {
            Konsole.log(diese.Startzeit);
            const Sekunden = Moment (diese.Startzeit).diff (neues Datum, 'Sekunden');
            if (Sekunden <= 0) {
                Intervall löschen(Timer);
                return „Zweiter Verkauf hat begonnen“;
            }
            const Sekunde = Sekunden%60;
            const Minuten = (Sekunden-Sekunde) / 60;
            const minute = Minuten%60;
            const Stunden = (Minuten-Minuten) / 60;
            const Stunde = Stunden%24;
            const Tag = (Stunden-Stunde) / 24;
            const res = tipTextPrefix + Tag + „Tag“ + Stunde + „Stunde“ + Minute + „Minute“ + Sekunde + „Sekunde“;
            Rückgabewert;
        }
    },
}
</Skript>

<Stil>

</Stil>

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Lösen Sie das Problem, dass das Vue-Projekt beim lokalen Start keine Cookies übertragen kann
  • Lösung für den Fehler „cannot GET /service“ beim Starten eines Vue-Projekts
  • Vue-Methode zum Ändern der Portnummer beim Projektstart
  • Detaillierte Erklärung zum Starten der Ausführung der Dist-Datei, die generiert wird, nachdem Webpack das Vue-Projekt gepackt hat
  • Detaillierte Erläuterung der VSCode-Konfiguration zum Starten eines Vue-Projekts
  • Einfache Konfigurationsmethode für das Hot-Start-Debugging von Webpack+Vue+Express (Hot)
  • Analyse der Gründe, warum vue-cli nicht auf das lokale Service-LAN zugreifen kann
  • Detaillierte Erläuterung des Startdatendienstes von Vue Express
  • Vue implementiert die Produktregisterkarte der Produktdetailseitenfunktion
  • Detaillierte Erläuterung des Implementierungsprinzips der bidirektionalen Datenbindung von Vue2.0/3.0
  • So starten Sie ein Vue.js-Projekt

<<:  Lösung für das Flashback-Problem nach der Eingabe des Passworts in der MySQL-Datenbank

>>:  Detaillierte Erläuterung der Verbindungslimitkonfiguration von Nginx für IP-Adressen in einem Netzwerksegment

Artikel empfehlen

Meta-Tags einfach erklärt

Der META-Tag, umgangssprachlich auch als Tag beze...

18 erstaunliche Verbindungen zwischen Interaktionsdesign und Psychologie

Designer müssen Psychologie verstehen, indem sie ...

Zusammenfassung neuer Anwendungsbeispiele für Calculated in Vue3

Die Verwendung von „Computed“ in vue3. Da vue3 mi...

So erstellen Sie ein CentOS-Basisimage

Vorwort Derzeit ist das von meiner Firma verwende...

Interpretation des Moduls zum Lastenausgleich mit nginx

Inhaltsverzeichnis Zwei Module zur Verwendung von...

Vue importiert Echarts, um ein Linienstreudiagramm zu realisieren

In diesem Artikel wird der spezifische Code für d...

Javascript-Grundlagen zu integrierten Objekten

Inhaltsverzeichnis 1. Einführung in integrierte O...

JavaScript-Grundlagenoperatoren

Inhaltsverzeichnis 1. Betreiber Zusammenfassen 1....

Ausführliche Erklärung des Sperrmechanismus in MySQL

Vorwort Um die Konsistenz und Integrität der Date...

Web-Kenntnisse: Lösung für die Koexistenz mehrerer IE-Versionen IETester

Meine Empfehlung Lösung für die Koexistenz mehrer...

Detaillierte Erklärung zum Abrufen der IP-Adresse eines Docker-Containers

1. Nach dem Betreten des Containers Katze /etc/ho...

Vue3.x verwendet mitt.js für die Komponentenkommunikation

Inhaltsverzeichnis Schnellstart Anwendung Grundpr...

Datenabfragevorgang im MySQL-JSON-Format

Der Standardtabellenname ist „base_data“ und der ...

Implementierung der MySQL-Datentypkonvertierung

1. Problem Es gibt eine Tabelle wie unten gezeigt...