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

Detailliertes Tutorial zur Nginx-Installation

1. Kurze Einführung in Nginx Nginx ist ein kosten...

Wie Sie React forwardRef verwenden und was Sie beachten müssen

Bisher konnte react.forwardRef nicht auf höherwer...

So verwenden Sie Docker, um Containerressourcen zu begrenzen

Problem beim Gucken Angenommen, der IIS-Dienst st...

Sekundäre Kapselung des Elements el-table table (mit Tischhöhenanpassung)

Vorwort Während meines Praktikums in der Firma ha...

Problem mit Berechtigungen zum Ändern gespeicherter Prozeduren in MySQL

Bei der Verwendung einer MySQL-Datenbank treten h...

JavaScript zur Implementierung des Anmeldeformulars

In diesem Artikelbeispiel wird der spezifische Ja...

Detaillierte Erläuterung der Kapselung von JavaScript-Animationsfunktionen

Inhaltsverzeichnis 1. Prinzip der Animationsfunkt...

Die Verbindung zwischen JavaScript-Konstruktoren und Prototypen

Inhaltsverzeichnis 1. Konstrukteure und Prototype...

Tutorial zur Installation von MySQL 8.0.11 unter Linux

1. Gehen Sie zur offiziellen Website, um das Inst...

So importieren, registrieren und verwenden Sie Komponenten in Stapeln in Vue

Vorwort Komponenten sind etwas, das wir sehr häuf...