Heim Web-Frontend js-Tutorial Vue implementiert einen Countdown-Button

Vue implementiert einen Countdown-Button

Apr 27, 2018 pm 03:40 PM
倒计时 实现 按钮

Dieses Mal erkläre ich Ihnen, wie Sie einen Countdown-Button in Vue implementieren. Was sind die Vorsichtsmaßnahmen für die Implementierung eines Countdown-Buttons in Vue?

In der Projektentwicklung stoßen wir häufig auf Schaltflächen, die Bestätigungscodes senden und nach dem Klicken einen 60-Sekunden-Countdown haben. Dies ist sehr häufig, aber auch sehr einfach, aber beim Schreiben dieser Schaltfläche gibt es solche Einige Stellen, auf die ich achten muss, werde ich heute aufschreiben. Wenn Sie Fragen haben, korrigieren Sie mich bitte.

Der fertige Effekt ist wie folgt:

Um den Effekt schneller anzuzeigen, habe ich die Zeit auf 5 Sekunden eingestellt. Nach dem Klicken auf die Schaltfläche wird ein Countdown angezeigt. Gleichzeitig wird die Schaltfläche nicht mehr anklickbar, ihr Stil ändert sich ebenfalls und das Erscheinungsbild der schwebenden Maus ändert sich ebenfalls.

Als nächstes verwenden wir Code, um es zu implementieren:

<button class="button" @click="countDown">
 {{content}}
</button>
...
data () {
  return {
   content: '发送验证码',  // 按钮里显示的内容
   totalTime: 60      //记录具体倒计时时间
  }
},
methods: {
  countDown() {
    let clock = window.setInterval(() => {
      this.total--
      this.content = this.total + 's后重新发送'
    },1000)
  }
}
Nach dem Login kopieren

Fügen Sie den Daten zwei Datenelemente hinzu, eines wird zum Aufzeichnen der Zeit und das andere zum Speichern des spezifischen Inhalts verwendet Countdown-Taste. In der CountDown-Funktion verwenden wir den setInterval-Timer, um die Gesamtzeit jede Sekunde um 1 zu verringern und den in der Schaltfläche angezeigten Inhalt zu ändern. Die Pfeilfunktion wird in window.setInterval verwendet, da sie das externe This automatisch bindet, sodass es nicht erforderlich ist, dieses zuerst zu speichern.

Der Effekt ist wie folgt:

Aber es gibt immer noch einige Probleme mit dieser Schaltfläche:

Nach 1 Sekunde nach dem Klicken auf die Schaltfläche , es geht direkt weiter von Der Countdown beginnt bei 59 Sekunden und die 60 in der Mitte fehlen
Sie können auch während des Countdowns klicken
Der Countdown wurde noch nicht gelöscht

Als Nächstes Sie Um diese Probleme zu lösen, muss die CountDown-Funktion weiter verbessert werden.

countDown () {
 this.content = this.totalTime + 's后重新发送' //这里解决60秒不见了的问题
 let clock = window.setInterval(() => {
  this.totalTime--
  this.content = this.totalTime + 's后重新发送'
  if (this.totalTime < 0) {     //当倒计时小于0时清除定时器
    window.clearInterval(clock)
    this.content = &#39;重新发送验证码&#39;
    this.totalTime = 60
    }
 },1000)
},
Nach dem Login kopieren

Der obige Code löst das Problem der fehlenden 60. Wenn die Gesamtzeit kleiner als 0 ist, wird gleichzeitig der Timer gelöscht, der Inhalt der Schaltfläche zurückgesetzt und die Gesamtzeit für den nächsten auf 60 zurückgesetzt Zeitnutzung.

Der Effekt des 10-Sekunden-Countdowns:

Nach mehrmaligem Klicken wird die Geschwindigkeit des Zurückspulens schneller Durch Klicken wird ein setInterval gestartet. Diese setIntervals reduzieren die Gesamtzeit. Auch die Lösung ist ganz einfach: einfach drosseln, also den Code der countDonw-Funktion nach dem ersten Klick auf die Schaltfläche nicht ausführbar machen und warten, bis der Countdown abgelaufen ist, bevor er erneut ausgeführt werden kann.

data () {
  return {
   content: &#39;发送验证码&#39;,
   totalTime: 10,
   canClick: true //添加canClick
  }
}
...
countDown () {
 if (!this.canClick) return  //改动的是这两行代码
 this.canClick = false
 this.content = this.totalTime + &#39;s后重新发送&#39;
 let clock = window.setInterval(() => {
  this.totalTime--
  this.content = this.totalTime + 's后重新发送'
  if (this.totalTime < 0) {
   window.clearInterval(clock)
   this.content = &#39;重新发送验证码&#39;
   this.totalTime = 10
   this.canClick = true  //这里重新开启
  }
 },1000)
}
Nach dem Login kopieren

CanClick in Daten hinzufügen Der Standardwert ist true. Wenn canClick true ist, kann der Code in countDown ausgeführt werden. Setzen Sie canClick bei jeder Ausführung auf „false“ und ändern Sie es erst auf „true“, wenn der Countdown endet. Auf diese Weise verschwindet das Problem jetzt.

Hier ist es fast fertig, aber Sie können auch den Stil anpassen:

<button class="button" :class="{disabled: !this.canClick}" @click="countDown">
...
.disabled{
 background-color: #ddd;
 border-color: #ddd;
 color:#57a3f3;
 cursor: not-allowed; // 鼠标变化
}
Nach dem Login kopieren

Effekt:

Dieser Countdown-Button ist sehr einfach, aber als ich ihn zum ersten Mal schrieb, war er immer noch sehr chaotisch und ich kannte das Konzept der Funktionsdrosselung zu diesem Zeitpunkt noch nicht.

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Detaillierte Erläuterung der Verwendung des .sync-Modifikators von vue

jQuery$ und $(). . Ausführliche Erklärung verwenden

Das obige ist der detaillierte Inhalt vonVue implementiert einen Countdown-Button. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie implementiert man die doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen? Wie implementiert man die doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen? Mar 24, 2024 am 11:27 AM

Wie implementiert man die doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen? Mit dem Aufkommen der sozialen Medien ist WeChat zu einem unverzichtbaren Kommunikationsmittel im täglichen Leben der Menschen geworden. Viele Menschen können jedoch auf ein Problem stoßen: Sie können sich gleichzeitig auf demselben Mobiltelefon bei mehreren WeChat-Konten anmelden. Für Huawei-Mobiltelefonbenutzer ist es nicht schwierig, eine doppelte WeChat-Anmeldung zu erreichen. In diesem Artikel wird erläutert, wie eine doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen erreicht wird. Erstens bietet das EMUI-System, das mit Huawei-Mobiltelefonen geliefert wird, eine sehr praktische Funktion – das doppelte Öffnen von Anwendungen. Durch die doppelte Öffnungsfunktion der Anwendung können Benutzer gleichzeitig

Warum startet mein Laptop nicht, nachdem ich den Netzschalter gedrückt habe? Warum startet mein Laptop nicht, nachdem ich den Netzschalter gedrückt habe? Mar 10, 2024 am 09:31 AM

Es kann mehrere Gründe dafür geben, dass Ihr Windows-Laptop nicht startet. Speicherfehler, leerer Akku, defekter Netzschalter oder Hardwareprobleme sind häufige Ursachen. Hier sind einige Lösungen, die Ihnen bei der Lösung dieses Problems helfen. Laptop lässt sich nach Drücken des Netzschalters nicht einschalten Wenn sich Ihr Windows-Laptop nach Drücken des Netzschalters immer noch nicht einschalten lässt, können Sie mit den folgenden Schritten das Problem beheben: Ist Ihr Laptop vollständig aufgeladen? Führen Sie einen Hard-Reset durch, um Ihren Laptop zu reinigen. Setzen Sie den Speicher neu ein. Transparenter CMOS-Akku. Bringen Sie Ihren Laptop zur Reparatur. 1] Ist Ihr Laptop vollständig aufgeladen? Überprüfen Sie zunächst, ob Ihr Laptop vollständig aufgeladen ist. Laptop startet nicht, wenn der Akku leer ist

PHP-Programmierhandbuch: Methoden zur Implementierung der Fibonacci-Folge PHP-Programmierhandbuch: Methoden zur Implementierung der Fibonacci-Folge Mar 20, 2024 pm 04:54 PM

Die Programmiersprache PHP ist ein leistungsstarkes Werkzeug für die Webentwicklung, das eine Vielzahl unterschiedlicher Programmierlogiken und Algorithmen unterstützen kann. Unter diesen ist die Implementierung der Fibonacci-Folge ein häufiges und klassisches Programmierproblem. In diesem Artikel stellen wir vor, wie Sie die Fibonacci-Folge mit der Programmiersprache PHP implementieren, und fügen spezifische Codebeispiele bei. Die Fibonacci-Folge ist eine mathematische Folge, die wie folgt definiert ist: Das erste und das zweite Element der Folge sind 1, und ab dem dritten Element ist der Wert jedes Elements gleich der Summe der beiden vorherigen Elemente. Die ersten paar Elemente der Sequenz

So implementieren Sie die WeChat-Klonfunktion auf Huawei-Mobiltelefonen So implementieren Sie die WeChat-Klonfunktion auf Huawei-Mobiltelefonen Mar 24, 2024 pm 06:03 PM

So implementieren Sie die WeChat-Klonfunktion auf Huawei-Mobiltelefonen Mit der Popularität sozialer Software und der zunehmenden Bedeutung von Datenschutz und Sicherheit rückt die WeChat-Klonfunktion allmählich in den Mittelpunkt der Aufmerksamkeit der Menschen. Die WeChat-Klonfunktion kann Benutzern helfen, sich gleichzeitig bei mehreren WeChat-Konten auf demselben Mobiltelefon anzumelden, was die Verwaltung und Nutzung erleichtert. Es ist nicht schwierig, die WeChat-Klonfunktion auf Huawei-Mobiltelefonen zu implementieren. Sie müssen lediglich die folgenden Schritte ausführen. Schritt 1: Stellen Sie sicher, dass die Version Ihres Mobiltelefonsystems und die WeChat-Version den Anforderungen entsprechen. Stellen Sie zunächst sicher, dass die Version Ihres Huawei-Mobiltelefonsystems sowie die WeChat-App auf die neueste Version aktualisiert wurden.

Wie sieht das iPhone 16 aus? Welche Änderungen gibt es beim iPhone 16? Wie sieht das iPhone 16 aus? Welche Änderungen gibt es beim iPhone 16? Apr 07, 2024 pm 05:10 PM

Nach der Veröffentlichung der iPhone 15-Serie gab es immer wieder Enthüllungen über das Aussehen und die Konfiguration von Apples neuem iPhone 16. Wie sieht das iPhone 16 aus? Gibt es eine Verbesserung beim iPhone 16? Kürzlich stellte ein Blogger aus Übersee das Design der iPhone 16-Serie vor. Das Gesamtdesign entspricht im Wesentlichen dem der iPhone 15-Serie. Wie auf dem Bild zu sehen ist, ist die gesamte iPhone 16-Serie standardmäßig mit einem neuen „Shoot“-Button ausgestattet, der Nutzern ein komfortableres Fotografieren ermöglicht. Darüber hinaus sind weitere Designdetails noch unbekannt. Die Meldung zeigt, dass dieser neue Knopf zum Aufnehmen von Videos verwendet wird und sich unter dem Netzschalter befindet. In früheren Nachrichten wurde erwähnt, dass es sich möglicherweise um einen kapazitiven Halbleiterknopf handelt, aber neuere Berichte deuten darauf hin, dass es sich immer noch um einen handeln sollte

So lösen Sie das Problem nicht reagierender Schaltflächen im IE-Browser So lösen Sie das Problem nicht reagierender Schaltflächen im IE-Browser Jan 30, 2024 am 10:48 AM

Was soll ich tun, wenn es keine Reaktion gibt, wenn der IE-Browser auf die Web-Schaltfläche klickt? Wenn beim Klicken auf den Web-Button keine Reaktion erfolgt, können wir dies in der Kompatibilitätsansicht festlegen! Wenn einige Freunde den IE-Browser verwenden, stellen sie fest, dass der Browser nicht reagiert, wenn sie auf die Schaltfläche auf der Webseite klicken. Auf diese Weise können wir die Funktionen der Webseite nicht nutzen Habe den IE-Browser unten zusammengestellt. Wie kann ich das Problem lösen, dass der Browser beim Klicken auf die Web-Schaltfläche nicht reagiert? Der IE-Browser reagiert nicht, wenn Sie auf die Web-Schaltfläche klicken. Lösung: 1. Öffnen Sie den IE-Browser, klicken Sie auf die Schaltfläche [Extras] in der Betriebsleiste und klicken Sie auf die Einstellungen für die [Kompatibilitätsansicht], wie in der Abbildung gezeigt. 2. Klicken Sie auf der Einstellungsseite [Kompatibilitätsansicht] rechts auf die Schaltfläche [Hinzufügen] und geben Sie die Website ein.

Implementierungshandbuch für PHP-Spielanforderungen Implementierungshandbuch für PHP-Spielanforderungen Mar 11, 2024 am 08:45 AM

Implementierungsleitfaden für PHP-Spielanforderungen Mit der Popularität und Entwicklung des Internets erfreut sich der Markt für Webspiele immer größerer Beliebtheit. Viele Entwickler hoffen, die PHP-Sprache zur Entwicklung ihrer eigenen Webspiele nutzen zu können, und die Umsetzung der Spielanforderungen ist ein wichtiger Schritt. In diesem Artikel wird erläutert, wie Sie mithilfe der PHP-Sprache allgemeine Spielanforderungen implementieren und spezifische Codebeispiele bereitstellen. 1. Spielfiguren erstellen In Webspielen sind Spielfiguren ein sehr wichtiges Element. Wir müssen die Attribute des Spielcharakters wie Name, Level, Erfahrungswert usw. definieren und Methoden für deren Bedienung bereitstellen

Meistern Sie, wie Golang Möglichkeiten für die Spieleentwicklung eröffnet Meistern Sie, wie Golang Möglichkeiten für die Spieleentwicklung eröffnet Mar 16, 2024 pm 12:57 PM

Im heutigen Bereich der Softwareentwicklung wird Golang (Go-Sprache) als effiziente, prägnante und hochgradig parallele Programmiersprache von Entwicklern zunehmend bevorzugt. Seine umfangreiche Standardbibliothek und die effizienten Parallelitätsfunktionen machen es zu einer hochkarätigen Wahl im Bereich der Spieleentwicklung. In diesem Artikel wird untersucht, wie man Golang für die Spieleentwicklung verwendet, und seine leistungsstarken Möglichkeiten anhand spezifischer Codebeispiele demonstriert. 1. Golangs Vorteile bei der Spieleentwicklung: Als statisch typisierte Sprache wird Golang beim Aufbau großer Spielsysteme verwendet.

See all articles