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

Grafisches Tutorial zur Installation und Konfiguration von CentOS 7

In diesem Artikel wird das ausführliche Installat...

HTML-Optimierung beschleunigt Webseiten

Offensichtliches HTML, verstecktes „öffentliches ...

So stellen Sie Spring Boot mit Docker bereit

Die Entwicklung der Docker-Technologie bietet ein...

Reines HTML+CSS, um einen Element-Ladeeffekt zu erzielen

Dies ist der Effekt der Element-UI-Ladekomponente...

Unterschiede zwischen MySQL CHAR und VARCHAR beim Speichern und Lesen

Einführung Kennen Sie wirklich den Unterschied zw...

Verstehen Sie alle Aspekte von HTTP-Headern mit Bildern und Text

Was sind HTTP-Header HTTP ist eine Abkürzung für ...

Detaillierte Erläuterung des verschachtelten Routings im Vue-Router

Inhaltsverzeichnis Schritt 1. Konfigurieren Sie R...

Natives JS zum Erzielen eines nahtlosen Karusselleffekts

Native js realisiert den Karusselleffekt (nahtlos...

Der gesamte Prozess der lokalen Konfiguration des Reverse-Proxys über Nginx

Vorwort Nginx ist ein leichtgewichtiger HTTP-Serv...

Eine kurze Einführung in die MySQL-Speicher-Engine

1. MySql-Architektur Bevor wir die Speicher-Engin...

MySQL 5.7.21 Installations- und Konfigurations-Tutorial

Die einfache Installationskonfiguration von mysql...

8 Gründe, warum Sie die Xfce-Desktopumgebung für Linux verwenden sollten

Aus verschiedenen Gründen (einschließlich Neugier...

CSS-Implementierungscode für die Textausrichtung

Beim Erstellen von Formularen kommt es häufig vor...

So laden Sie Projekte im Linux-System in die Code Cloud hoch

Erstellen Sie ein neues Projekt test1 auf Code Cl...