Detaillierte Erklärung der Mixins in Vue.js

Detaillierte Erklärung der Mixins in Vue.js

Mixins stellen auf flexible Weise verteilte, wiederverwendbare Funktionalität für Komponenten bereit. Mixin-Objekte können beliebige Komponentenoptionen enthalten. Wenn eine Komponente ein Mixin verwendet, werden alle Optionen im Mixin in die eigenen Optionen der Komponente „eingemischt“.

1. Grundlegende Verwendung von Mixins

Nun gibt es ein Programm, das Zahlen durch Klicken hochzählt. Vorausgesetzt, es ist fertig, hoffen wir, dass bei jeder Änderung der Daten eine Meldung „Daten haben sich geändert“ in der Konsole ausgegeben werden kann.

Code-Implementierungsprozess:

<div id="app">
    <p>Anzahl:{{ Anzahl }}</p>
    <P><button @click="add">Menge hinzufügen</button></P>
</div>


<Skript>
    var addLog = {
    	// Mischen Sie den aktualisierten Hook in die Vue-Instanz updated() {
            console.log("Die Daten ändern sich in " + this.num + ".");
        }
    }

    var app = new Vue({
        el: '#app',
        Daten: {
            Zahl: 1
        },
        Methoden: {
            hinzufügen: Funktion () {
                diese.num++;
            }
        },
        Mixins: [addLog], //mixin})
</Skript>     

Geben Sie hier die Bildbeschreibung ein

Wenn auf die Schaltfläche geklickt wird, wird die aktualisierte Methode im gemischten AddLog ausgelöst.

2. Die Aufrufreihenfolge von Mixins

  • In Bezug auf die Ausführungsreihenfolge混入的先執行,然后構造器里的再執行
  • Die Attribute in data und die Methoden in methods werden überschrieben (構造器覆蓋混入的屬性和方法).
  • Die Lifecycle-Hooks werden zweimal aufgerufen und nicht überschrieben (先調用混入鉤子再調用構造器鉤子).

Wir haben außerdem die aktualisierte Hook-Funktion zum Konstruktor des obigen Codes hinzugefügt:

<div id="app">
    <p>Anzahl:{{ Anzahl }}</p>
    <P><button @click="add">Menge hinzufügen</button></P>
</div>


<Skript>
    var addLog = {
        aktualisiert : Funktion () {
            console.log("Die Daten ändern sich in " + this.num + ".");
        }
    }

    var app = new Vue({
        el: '#app',
        Daten: {
            Zahl: 1
        },
        Methoden: {
            hinzufügen: Funktion () {
                diese.num++;
            }
        },
        aktualisiert: Funktion () {
            console.log("Methode im Konstruktor aktualisiert.")
        },
        Mixins: [addLog], //mixin})
</Skript>     

Geben Sie hier die Bildbeschreibung ein

3. Globale Mixin-Methode

Globale Mixins werden vor Mixins und Konstruktormethoden ausgeführt.

<div id="app">
    <p>Anzahl:{{ Anzahl }}</p>
    <P><button @click="add">Menge hinzufügen</button></P>
</div>


<Skript>
    Vue.mixin({
        aktualisiert: Funktion () {
            console.log('Ich bin global eingebunden');
        }
    })

    var addLog = {
        aktualisiert : Funktion () {
            console.log("Die Daten ändern sich in " + this.num + ".");
        }
    }

    var app = new Vue({
        el: '#app',
        Daten: {
            Zahl: 1
        },
        Methoden: {
            hinzufügen: Funktion () {
                diese.num++;
            }
        },
        aktualisiert: Funktion () {
            console.log("Methode im Konstruktor aktualisiert.")
        },
        Mixins: [addLog], //mixin})
</Skript>     

Geben Sie hier die Bildbeschreibung ein

Sequentielle Zusammenfassung:全局混入> 局部混入> 構造器

Wenn zwei Objektschlüsselnamen in Konflikt stehen, nehmen Sie das Schlüssel-Wert-Paar des Komponentenobjekts

Wenn sowohl im Mixin als auch im Komponentenobjekt Testmethoden (mit demselben Namen) vorhanden sind, ist der endgültige Wert das Schlüssel-Wert-Paar des Komponentenobjekts.

  <div id="app">
      <p>Anzahl:{{ Anzahl }}</p>
      <P>
          <button @click="add">Menge hinzufügen</button>
      </P>
  </div>

  <Skript>
      var addLog = {
          aktualisiert: Funktion () {
              console.log("Die Daten ändern sich in " + this.num + ".");
              dies.test();
          },
          Methoden: {
              Test: Funktion () {
                  console.log('Test im Mixin')
              }
          }
      }

      var app = new Vue({
          el: '#app',
          Daten: {
              Zahl: 1
          },
          Methoden: {
              hinzufügen: Funktion () {
                  diese.num++;
              },
              test:funktion(){
                  console.log('Test im Komponentenobjekt')
              }
          },
          Mixins: [addLog], //mixin})
</Skript>

Geben Sie hier die Bildbeschreibung ein

Dies ist das Ende dieses Artikels über Vue.js-Mixins. Weitere Informationen zu Vue.js-Mixins 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:
  • Ein tiefer Einblick in Vue.js-Mixins
  • Detaillierte Erklärung der Vue.js-Mixins
  • So verwenden Sie Mixins in Vue.js

<<:  Detaillierte Erläuterung des Implementierungsprozesses und der Verwendung des Linux-Papierkorbmechanismus

>>:  Zusammenfassung der allgemeinen MySQL-Funktionen

Artikel empfehlen

So erstellen Sie einen Redis-Cluster mit Docker

Inhaltsverzeichnis 1. Erstellen Sie ein Redis-Doc...

Ein genauerer Blick auf die Unterschiede zwischen Link und @import

Es gibt drei Hauptmethoden, CSS auf einer Seite zu...

js, um eine einfache Produkt-Screening-Funktion zu erreichen

In diesem Artikelbeispiel wird der spezifische JS...

MySQL Workbench herunterladen und verwenden Tutorial detaillierte Erklärung

1. MySQL Workbench herunterladen Workbench ist ei...

4 Funktionen, die durch das Transform-Attribut in CSS3 implementiert werden

In CSS3 können mit der Transformationsfunktion vi...

Detailliertes Beispiel zum Ändern des Linux-Kontokennworts

Passwort des persönlichen Kontos ändern Wenn norm...

So deinstallieren Sie das native OpenJDK von Linux und installieren Sun JDK

Siehe: https://www.jb51.net/article/112612.htm Üb...

Sollte ich JQuery aufgeben?

Inhaltsverzeichnis Vorwort Was soll verwendet wer...