Detaillierte Erklärung der Kommunikation zwischen hierarchisch verschachtelten Komponenten in der Vue-Frontend-Entwicklung

Detaillierte Erklärung der Kommunikation zwischen hierarchisch verschachtelten Komponenten in der Vue-Frontend-Entwicklung

Vorwort

Übergeordnete und untergeordnete Vue-Komponenten können den Wert der übergeordneten Komponente problemlos über Requisiten an die untergeordnete Komponente weitergeben. Wenn eine Komponente in mehreren Schichten verschachtelt ist, muss jede Schicht den Wert mit denselben Requisiten weitergeben, was mühsam und schwer zu verwalten ist.

Beispiel

[Beispiel] Komponente A verwendet Komponente B und Komponente B verwendet Komponente C. Komponente C muss den Datentext und die Methode getmethod von Komponente A verwenden. Der Code der Komponente A lautet wie folgt:

<Vorlage>
  <div>
    <P>Dies ist Komponente A</P>
    <v-Kamm></v-Kamm>
  </div>
</Vorlage>
<Skript>
  importiere comB aus '@/view/comB.vue'
  Standard exportieren {
    Name: 'comA',
    Komponenten:
      'v-Kamm': KammB
    },
    Daten() {
      zurückkehren {
        msg: 'Ich bin die Daten in Komponente A'
      }
    },
    provide: function() { //Eigenschaften und Methoden in untergeordnete Komponenten einfügen return {
        Text: diese.Nachricht,
        getMethod: Funktion() {
          console.log('Führen Sie die Methode getMethod in der Stammkomponente aus.')
        }
      }
    }
  }
</Skript>

Verwenden Sie das Schlüsselwort provide, um Daten und Methoden für untergeordnete Komponenten verfügbar zu machen
Komponente B ist eine untergeordnete Komponente von Komponente A und eine übergeordnete Komponente von Komponente C. Der Code lautet wie folgt

<Vorlage>
  <div>
    <div>
      <P>Dies ist Komponente B</P>
      <v-comc></v-comc>
    </div>
  </div>
</Vorlage>
<Skript>
  importiere comC aus '@/view/comC.vue'
  Standard exportieren {
    Name: 'comB',
    Komponenten:
      'v-comc': comC
    }
  }
</Skript>

Komponente C ist das Enkelkind von Komponente A. Komponente C muss die Daten und Methoden von Komponente A verwenden. Der Code lautet wie folgt:

<Vorlage>
  <div style="border:1px durchgezogen orange;color:orange;">
    <div>
      <P>Dies ist eine C-Komponente</P>
      <div>{{text}}</div>
      <button @click="getMethod">Übergeordnete Komponentenmethode aufrufen</button>
    </div>
  </div>
</Vorlage>
<Skript>
  Standard exportieren {
    Name: 'comC',
    inject: ['text', 'getMethod'] //text und getMethod sind die vom Anbieter bereitgestellten Namen}
</Skript>

Das Schlüsselwort inject wird hier verwendet, um die von Komponente A bereitgestellten Informationen zu empfangen. Achten Sie hierbei besonders darauf, dass der in inject: [] empfangene Name exakt mit dem von provide bereitgestellten Namen übereinstimmen muss.

Ausführen. Die Schnittstelle ist wie unten gezeigt

Bildbeschreibung hier einfügen

Zusammenfassung

Für die mehrstufige verschachtelte Komponentenkommunikation verwendet Vue die Schlüsselwörter provide & inject, um Werte direkt von übergeordneten Komponenten an untergeordnete Komponenten zu übertragen, was sehr praktisch ist. Es besteht eine starke Kopplungsbeziehung zwischen der problematischen Unterkomponente und der übergeordneten Komponente und es wird nicht empfohlen, sie zu verwenden, es sei denn, dies ist unbedingt erforderlich.

Oben finden Sie den ausführlichen Inhalt der detaillierten Erklärung zur Kommunikation hierarchisch verschachtelter Komponenten in der Vue-Frontend-Entwicklung. Weitere Informationen zur Kommunikation hierarchisch verschachtelter Komponenten in Vue finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • Vue verwendet Refs, um den Wertprozess in verschachtelten Komponenten abzurufen
  • Die Keep-Alive-Komponente in Vue implementiert das Caching mehrstufiger verschachtelter Routen
  • Detaillierte Erklärung zur Verwendung selbstverschachtelter Vue-Baumkomponenten
  • Vue Keep-Alive ermöglicht es einzelnen Komponenten, bei der Verschachtelung mehrerer Komponenten zu überleben und nicht zerstört zu werden.
  • Beispiel für die Implementierung verschachtelter Unterkomponenten in Vue-Komponenten
  • Lösen Sie das Problem der verschachtelten Überwachung von Browserfensteränderungen in mehreren Komponenten auf einer einzigen Vue-Seite
  • Verwenden Sie form-create, um benutzerdefinierte Vue-Komponenten und verschachtelte Formularkomponenten dynamisch zu generieren
  • Beispielcode für verschachtelte Vue-Eltern-Kind-Komponenten
  • Zwei Möglichkeiten zur Implementierung der mehrschichtigen Vue-Komponentenverschachtelung (Testbeispiel)
  • Beispielfreigabe für die Parameterübergabe verschachtelter Komponenten in Vue

<<:  Docker-Konfiguration Alibaba Cloud Image Acceleration Pull-Implementierung

>>:  So fügen Sie Emoji-Ausdrücke in MySQL ein

Artikel empfehlen

Detaillierte Erläuterung der Methode zum Vergleichen von Daten in MySQL

Wenn es eine Tabelle mit einem Feld „add_time“ gi...

jQuery-Plugin zur Implementierung des Minesweeper-Spiels (3)

In diesem Artikel wird der dritte Artikel zur Ver...

So überprüfen Sie, ob der Grafiktreiber erfolgreich in Ubuntu installiert wurde

Führen Sie den Befehl aus: glxinfo | grep renderi...

Warum wird deine Like-Aussage nicht indexiert?

Vorwort Dieser Artikel zielt darauf ab, die langw...

JavaScript implementiert eine Seiten-Scrolling-Animation

Inhaltsverzeichnis Erstellen eines Layouts CSS-St...

Stapelweises Ersetzen eines Teils der Daten eines Felds in MySQL (empfohlen)

Stapelweises Ersetzen eines Teils der Daten eines...

Verwenden Sie nginx, um virtuelle Hosts auf Domänennamenbasis zu konfigurieren

1. Was ist ein virtueller Host? Virtuelle Hosts v...

Detaillierte Erklärung des JavaScript-Prototyps und Beispiele

Inhaltsverzeichnis Die Beziehung zwischen der Kon...

Vue-Vorlagenkonfiguration und Webstorm-Codeformatspezifikationseinstellungen

Inhaltsverzeichnis 1. Einstellungen für die Spezi...

So verwenden Sie SHTML-Includes

Durch die Anwendung können einige öffentliche Bere...