So verwenden Sie die Debouce-Anti-Shake-Funktion in Vue

So verwenden Sie die Debouce-Anti-Shake-Funktion in Vue

1. Anti-Shake-Funktion

Unter der Annahme, dass das Intervall zwischen zwei Ajax-Kommunikationen nicht weniger als 2500 Millisekunden betragen darf, kann der obige Code wie folgt umgeschrieben werden.

$('textarea').on('keydown', entprellung(ajaxAction, 2500));

Funktion Entprellung(fn, Verzögerung){
  var Timer = null; // Timer deklarieren return function() {
    var Kontext = dies;
    var args = Argumente;
    Zeitüberschreitung löschen(Timer);
    Timer = setzeTimeout(Funktion () {
      fn.apply(Kontext, Argumente);
    }, Verzögerung);
  };
}

Im obigen Code wird der vorherige Timer abgebrochen und ein neuer Timer erstellt, sobald der Benutzer die Taste innerhalb von 2500 Millisekunden erneut drückt. Dadurch wird sichergestellt, dass das Intervall zwischen den Aufrufen der Callback-Funktion mindestens 2500 Millisekunden beträgt.

2. Verwenden Sie die Debouce-Anti-Shake-Funktion in Vue

Erstellt eine debounced Funktion, die func nach einer Verzögerung von wait-Millisekunden seit dem letzten Aufruf aufruft. Die Entprellungsfunktion bietet eine Abbruchmethode zum Abbrechen des verzögerten Funktionsaufrufs und eine flush zum sofortigen Aufrufen. Sie können ein options angeben, um zu bestimmen, wie die Func-Methode aufgerufen wird, options.leading und | oder options.trailing, um zu bestimmen, wie vor und nach der Verzögerung ausgelöst wird

(Hinweis: ob erst anrufen und dann warten oder erst warten und dann anrufen).

Wenn func aufgerufen wird, werden die Argumente übergeben, die zuletzt der debounced Funktion bereitgestellt wurden. Nachfolgende Aufrufe der debounced Funktion geben das Ergebnis des letzten Aufrufs von func zurück.

Lodash-Debouce-Parameter:

  • func (Function) : Die zu entprellende Funktion.
  • [wait=0] (number) : Die Anzahl der Millisekunden, die verzögert werden soll.
  • [options=] (Object) : Optionsobjekt.
  • [options.leading=false] (boolean) : Gibt an, dass vor Beginn der Verzögerung aufgerufen werden soll.
  • [options.maxWait] (number) : Legen Sie den Maximalwert fest, um den die Funktion verzögert werden darf.
  • [options.trailing=true] (boolean) : Gibt an, dass nach Ablauf der Verzögerung aufgerufen werden soll.
<Vorlage>
<el-Eingabe
    v-Modell="Wert"
    Größe="mini"
    Platzhalter="Bitte geben Sie ein.."
    löschbar
    @keydown.enter="Suche handhaben"
  ></el-Eingabe>
</Vorlage>
<Skript>
importiere _ von 'lodash'
Standard exportieren {
Daten() {
    return { Wert: '' }
},
erstellen() {
    dies.handleSearch = _.debounce(() => {
      // Liste abrufen this.getList();
    }, 300);
},
vorZerstören() {
    //Anti-Shake-Aufruf dieser Funktion abbrechen this.handleSearch.cancel();
},
}
</Skript>

Dies ist das Ende dieses Artikels zur Verwendung der Debouce-Anti-Shake-Funktion in Vue. Weitere Informationen zur Verwendung der Debouce-Anti-Shake-Funktion in Vue finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Verwenden der Komponentenoperation der Anti-Shake-Funktion in Vue
  • Vue implementiert Beispielcode zur Überprüfung von Mobiltelefonnummern (Anwendungsszenario der Anti-Shake-Funktion)

<<:  Tutorial zur Installation und Bereitstellung des automatischen Mount-Dienstes Autofs unter Linux

>>:  Lassen Sie uns ausführlich über die gemeinsame MySQL-Abfrage sprechen

Artikel empfehlen

Vue setzt die Daten auf ihren ursprünglichen Zustand zurück

In einigen Fällen müssen die Daten in den Daten w...

Detaillierte Analyse der SQL-Ausführungsschritte

Detaillierte Analyse der SQL-Ausführungsschritte ...

Optionsfelder und Multiple-Choice-Schaltflächen werden mit Bildern gestaltet

Ich habe schon Leute fragen hören, wie man Options...

XHTML-Tutorial: Der Unterschied zwischen Transitional und Strict

Tatsächlich ist XHTML 1.0 in zwei Typen unterteil...

Tutorial-Analyse der Schnellinstallation von mysql5.7 basierend auf centos7

eins. wget https://dev.mysql.com/get/mysql57-comm...

So überwachen Sie die Linux-Speichernutzung mit einem Bash-Skript

Vorwort Auf dem Markt sind zahlreiche Open-Source...

Beispiel für das Schreiben von mobilem H5 zum Aufrufen einer APP (IOS, Android)

iOS 1. URL-Schema Diese Lösung ist grundsätzlich ...

Mysql-Optimierungstool (empfohlen)

Vorwort Als ich heute auf GitHub gestöbert habe, ...

Erste Schritte mit GDB unter Linux

Vorwort gdb ist ein sehr nützliches Debugging-Too...

Implementierung des Nginx Intranet Standalone Reverse Proxy

Inhaltsverzeichnis 1 Nginx Installation 2 Nginx k...

Rückgängigmachen der Anmeldung in MySQL

Konzepteinführung: Wir wissen, dass das Redo-Log ...

Vue ElementUI implementiert einen asynchronen Ladebaum

In diesem Artikelbeispiel wird der spezifische Co...