Anpassen eines Demo-BefehlsDie Syntax der benutzerdefinierten Vue-Direktiven lautet wie folgt: Vue.direktive(id, definition) Die beiden übergebenen Parameter „id“ bezieht sich auf die Anweisungs-ID und „definition“ bezieht sich auf das Definitionsobjekt. Darunter kann das Definitionsobjekt einige Hook-Funktionen bereitstellen. <div id="app"> <!-- Eingabefeld erhält Fokus--> <Eingabetyp="Text" v-Fokus/> </div> <Skript> // Registriere eine globale benutzerdefinierte Direktive v-focus Vue.direktive("Fokus", { // Wenn das gebundene Element in das DOM eingefügt wird. eingefügt(el, Bindung) { // Fokuselement el.focus(); } }) </Skript> <div id="app"> <p v-demo:red="msg">{{msg}}</p> </div> <Skript> // Globale Direktive Vue.directive('demo', function (el, binding) { console.log(el) //p tag console.log(binding) //Die Ausgabe ist ein Objekt obj console.log('Befehlsname:'+binding.name) //Befehlsnameconsole.log('Befehlsbindungswert:'+binding.value) //Befehlsbindungswertconsole.log('Zeichenfolgenform des Bindungswerts:'+binding.expression) //Zeichenfolgenform des Bindungswertsconsole.log('An den Befehl übergebener Parameter:'+binding.arg) //An den Befehl übergebener Parameter}) var vm = neuer Vue({ el: "#app", Daten: { Nachricht: 'Hallo!' }, // Lokale Anweisungen:{ Demo:{ eingefügt: Funktion (el) { console.log(el) } } } }) </Skript> Objektliterale<div id="app"> <p v-demo="Farben">{{Farben.text}}</p> </div> <Skript> Vue.Direktive('demo', Funktion (el, Bindung) { console.log(el) // p-Tag console.log(Bindung) // Die Ausgabe ist ein Objekt obj console.log(Bindung.Wert) // {Farbe: 'blau',Text: 'Hallo!'} console.log(Bindung.Wert.Farbe) // 'blau' console.log(binding.value.text) // 'Hallo!' el.style = 'Farbe:' + Bindung.Wert.Farbe }) var vm = neuer Vue({ el: "#app", Daten: { Farben: Farbe: 'blau', Text: „Hallo!“ } } }) </Skript> Lebenszyklus-HooksDie Direktivendefinitionsfunktion bietet mehrere Hook-Funktionen (optional):
<div id="app"> <p v-demo="Farbe">{{Anzahl}}</p> <button @click="add">Hinzufügen</button> <button onclick='unbind()'>Bindung aufheben</button> </div> <Skript> Funktion unbind() { vm.$destroy(); //Starte eine andere Methode zum Aufheben der Bindung} Vue.directive('demo', { //Fünf Hook-Funktionen zum Registrieren von Direktiven bind: function () { //1. Gebunden werden //Für die Bindung vorbereiten. Zum Beispiel Ereignis-Listener oder andere komplexe Operationen hinzufügen, die nur einmal ausgeführt werden müssen console.log('1 - bind'); }, eingefügt: Funktion () { //2. An den Knoten binden console.log('2 - eingefügt'); }, update: function () { //3. Komponentenaktualisierung//Führen Sie entsprechende Aktualisierungen basierend auf den neu erhaltenen Werten durch. Für den Initialwert wird zusätzlich einmal console.log('3 - update'); aufgerufen. }, componentUpdated: function () { //4. Komponentenaktualisierung abgeschlossen console.log('4 - componentUpdated'); }, unbind: function () { //5. Unbind//Bereinigungsvorgänge durchführen. Wenn Sie beispielsweise den durch Bind gebundenen Ereignis-Listener entfernen, console.log('5 - bind'); } }) var vm = neuer Vue({ el: "#app", Daten: { Zahl: 10, Farbe: 'rot' }, Methoden: { hinzufügen: Funktion () { diese.num++; } } }) </Skript> Initialisieren Sie die Auslösemethoden 1 und 2, klicken Sie auf die Schaltfläche „Hinzufügen“, um die Methoden 3 und 4 auszulösen, und klicken Sie auf die Schaltfläche „Aufheben“, um Methode 5 auszulösen, wie unten gezeigt: Dies ist das Ende dieses Artikels mit der detaillierten Erklärung der benutzerdefinierten Anweisungen für Vue.js-Direktiven. Weitere relevante benutzerdefinierte Anweisungen für Vue.js-Direktiven 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:
|
<<: Schritte für Docker zum Erstellen eines privaten Lagerhafens
>>: Detaillierte Analyse der MySQL MDL-Metadatensperre
Bedarfsszenario: Der Chef bat mich, den Crawler z...
1. Verwenden Sie das Tag <nobr>, um keinen Z...
In diesem Artikelbeispiel wird der spezifische Ja...
yum-Befehl Yum (vollständiger Name Yellow Dog Upd...
Inhaltsverzeichnis Auswirkungen Dokumentation ers...
Inhaltsverzeichnis Vorwort 1. Konfigurieren Sie d...
Inhaltsverzeichnis Was ist React Fiber? Warum Rea...
1. Was ist ein Proxyserver? Proxyserver: Wenn der...
So konfigurieren Sie benutzerdefinierte Pfadalias...
In vielen Fällen wird die Schaltfläche „Senden“ du...
Hintergrund Als ich in diesen beiden Tagen Docker...
Umfeld: MAC_OS 10.12 Python 3.6 MySQL 5.7.25 Djan...
Inhaltsverzeichnis Frage: Antwort: Wirklichkeit: ...
Inhaltsverzeichnis 1. Was ist der Lebenszyklus 2....
Nachfolgend finden Sie den Code zum Erstellen ein...