Vue2-Implementierungen bieten Injection für Reaktionsfähigkeit

Vue2-Implementierungen bieten Injection für Reaktionsfähigkeit

1. Konventionelles Schreiben in vue2

// Die übergeordnete Komponente stellt „foo“ bereit.
var Anbieter = {
Daten(){
    zurückkehren {
        foo: "Leiste"
    }
}
  bieten:
    fooProvide: this.fooFn // übergebe eine Referenztypfunktion},
 Methoden:{
     fooFn() {
        gib dies zurück.foo
      }
 }
}

var Kind = {
  einfügen: ['fooProvide'],
  berechnet:{
      fooComputed(){
          return this.fooProvide() // Weil die übergebene Funktion ein Referenztyp ist}
  }
  erstellt () {
    Konsole.log(dies.fooComputed) 
  }
  // ...
}

2. Die unkonventionelle Schreibweise in vue2, aber bequem zu verwenden. (Die Verwendung ist wahrscheinlich dieselbe, aber der übergebene Wert wird zu diesem --> die gesamte Instanz)

// Die übergeordnete Komponente stellt „foo“ bereit.
var Anbieter = {
Daten(){
    zurückkehren {
        foo: "Leiste",
        andere:'...'
    }
}
  bieten:
    app: this // übergebe das gesamte this past},
  montiert(){
      const das = dies
      setzeTimeout(()=>{
          that.foo = 'Wert ändern'
      },4000)
  }
}

var Kind = {
  injizieren: ['app'],
  erstellt () {
    console.log(this.app.foo) // Alles unterhalb von this.app reagiert, da es sich um Verweise auf dieselbe Instanz handelt}
  // ...
}

3. vue2 + ts (denn wenn Sie ts noch nie verwendet haben, wissen Sie nicht wirklich, wie man es benutzt, also hier ein Beispiel)

Methode angeben:
1. @Provide() foo = "foo"
2. @Provide('bar') baz = 'bar'

Injektionsmethode:
1. @Inject() foo: Zeichenfolge
2. @Inject('bar') bar: Zeichenfolge
3. @Inject(s) baz: Zeichenfolge

Beispiel:

// Die übergeordnete Komponente stellt „fooProvide“ bereit.
@Provide('fooProvide') // Nennen Sie es, wie Sie möchten, übergeben Sie nur den gleichen Wert wie den, den Sie erhalten haben. Aber lassen Sie es im Allgemeinen gleich wie die Variable unten fooProvide = this.refreshNumFn // Variable erhält den zu übergebenden Wert refreshNumFn() {
  gib dies zurück.refreshNum
}

// Kindkomponente empfängt @Inject('fooProvide') fooProvide: any
erhalte WertA(): beliebig {
    gib dies zurück.fooProvide()
  }
montiert(){
    konsole.log(dieser.WertA) // ...
}

Dies ist das Ende dieses Artikels über die Implementierung von Provide Inject durch vue2 zur Bereitstellung von Reaktionsfähigkeit. Weitere verwandte Inhalte zu Provide Inject von vue2 finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Vue löst das Problem der Bereitstellung und Einfügung von Antworten
  • Sprechen Sie über die detaillierte Anwendung von Provide/Inject in Vue
  • Eine kurze Analyse der Verwendung von provide / inject in Vue
  • Reaktionsfähige Überwachungslösung zum Bereitstellen von Einfügen in Vue

<<:  Detaillierte Erklärung der Lösung für den Fehler beim Erstellen eines Benutzers und Erteilen von Berechtigungen in mysql8.0

>>:  Tutorial zum Importieren und Exportieren von Docker-Containern

Artikel empfehlen

Der Prozess der Installation und Konfiguration von Nginx in Win10

1. Einleitung Nginx ist ein kostenloser, quelloff...

Spezifische Schritte für den Vue-Browser zur Rückgabe der Überwachung

Vorwort Beim Teilen einer Seite hoffen Sie, durch...

Lösung für FEHLER 1366 bei der Eingabe von Chinesisch in MySQL

Beim Eingeben von Chinesisch in MySQL tritt der f...

Vue + Element zur dynamischen Anzeige von Hintergrunddaten zu Optionen

brauchen: Implementieren Sie die dynamische Anzei...

So verwenden Sie Watch-Listener in Vue2 und Vue3

watch : auf Datenänderungen achten (Änderungserei...

Zusammenfassung der Entwicklung benutzerdefinierter Vue 3-Richtlinien

Was ist eine Richtlinie? Sowohl Angular als auch ...

So legen Sie den Standardwert für den Datums-/Uhrzeittyp in MySQL fest

Beim Ändern des Standarddatums-/Uhrzeitwerts über...

Eine kurze Analyse von Kubernetes-Controllern und -Labels

Inhaltsverzeichnis 01 Gemeinsame Controller in k8...

Installieren Sie ein CentOS-System basierend auf WindowsX Hyper-V

Derzeit nutzen die meisten Linux-Benutzer entwede...

Natives JavaScript zum Erreichen von Skinning

Der spezifische Code zur Implementierung von Skin...

Die Komponente vue-cropper realisiert das Zuschneiden und Hochladen von Bildern

In diesem Artikel wird der spezifische Code der V...

Vorteile von MySQL-Abdeckungsindizes

Ein allgemeiner Vorschlag besteht darin, Indizes ...