Detaillierte Erklärung der Kernkonzepte und der grundlegenden Verwendung von Vuex

Detaillierte Erklärung der Kernkonzepte und der grundlegenden Verwendung von Vuex

einführen

Vuex ist ein Mechanismus zum Verwalten des globalen Status (der Daten) von Komponenten, mit dem sich problemlos eine gemeinsame Datennutzung zwischen Komponenten realisieren lässt.

Start

Installieren

① Direkte Download-Methode

Erstellen Sie eine vuex.js-Datei und fügen Sie den Inhalt der URL https://unpkg.com/vuex in den Ordner ein.

②CND-Methode

<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.js"></script>

③NPM-Methode

npm installiere vuex --save

④Garnmethode

Garn hinzufügen Vuex

So verwenden Sie die NPM-Installation

1. Erstellen Sie in der scr-Datei einen Ordner store/index.js und schreiben Sie den folgenden Inhalt.

Vue von „vue“ importieren
Vuex von „vuex“ importieren
Vue.Verwenden(Vuex)
exportiere standardmäßig neuen Vuex.Store({
Zustand: {},
Mutationen: {},
Aktionen: {},
Module: {}
})

2. Importieren Sie es in main.js und mounten Sie es dann in die Vue-Instanz

Vue von „vue“ importieren
Store aus „./store“ importieren
neuer Vue({
  rendern: h => h(App),
  speichern
}).$mount('#app')

Ladenkonzept und -nutzung

Konzept:

Es wird zum Austausch von Daten zwischen Komponenten verwendet.

Nur Mutationen können Daten im Speicher ändern.

verwenden:

Vor der Verwendung definieren

Definition

Zustand: {
  Nummer: 0
}

verwenden

Methode 1 (empfohlen)

<div>{{AnzahlAlias ​​​​}}</div>

importiere { mapState } von 'vuex'
Standard exportieren {
  //Berechnungsfunktion berechnet: mapState({
    // Die Übergabe des String-Parameters „count“ entspricht „state => state.count“
    numAlias: 'num', // Der gemeinsame Schlüssel ist ein Name, den Sie selbst vergeben, der Wert sind die Daten, die Sie erhalten // Die Pfeilfunktion kann den Code prägnanter machen count: state => state.count,
    // Um ​​`this` verwenden zu können, um den lokalen Status abzurufen, müssen Sie die reguläre Funktion countPlusLocalState (state) { verwenden.
      returniere state.count + this.localCount
    }
    //Sie können andere Berechnungsfunktionen definieren}),
  //Oder so //Berechnete Funktion berechnet: {
    mapState(['Anzahl'])
  }
}

Methode 2

<div>{{ $store.state.count }}</div>

Mutationskonzept und -verwendung

Konzept:

Ändern Sie die Daten im Speicher. Das Ändern der Daten an anderen Stellen ist strengstens verboten. Führen Sie in Mutationen keine asynchronen Vorgänge aus.

Mutationen müssen synchron ausgeführt werden und können nicht asynchron ausgeführt werden.

verwenden:

Definieren Sie die Methode, bevor Sie sie verwenden

Definition

Mutationen:
	//Inkrementieren Sie die benutzerdefinierte Methode. Der Store-Parameter ist das Speichern von Daten, der Parameter Parameter sind empfangene Daten, nicht inkrementieren (Status, Parameter) {
        // Status ändern state.num++
    }
}

verwenden

Methode 1 (empfohlen)

importiere { mapState, mapMutations } von 'vuex'
//Methoden: {
	…mapMutations([
	    // Mutationen, benutzerdefinierter Methodenname „Inkrement“
    ]),
    Liebe() {
    	// Dies ruft direkt this.increment auf ('Die zu übergebenden Daten werden nicht benötigt.')
        this.increment('Bin')
    }
}

Methode 2

Methoden: {
    Liebe() {
    	// this.$store.commit('benutzerdefinierter Name', 'übergebene Daten dürfen nicht übergeben werden')
    	dies.$store.commit('Inkrement', 'Daten')
    }
}

Aktionskonzept und -verwendung

Konzept:

Wird zur Verarbeitung asynchroner Vorgänge verwendet.

Wenn Sie Daten durch asynchrone Vorgänge ändern möchten, müssen Sie Aktionen statt Mutationen verwenden. Sie müssen Daten jedoch weiterhin indirekt ändern, indem Sie Mutationen in Aktionen auslösen.

Die Aktion ähnelt der Mutation, außer dass:

  • Die Aktion übermittelt eine Mutation, anstatt die Daten (den Status) direkt zu ändern.
  • Die Aktion kann beliebige asynchrone Vorgänge enthalten.

Definition

Mutationen:
	//Inkrementieren Sie die benutzerdefinierte Methode. Der Store-Parameter ist das Speichern von Daten, der Parameter Parameter sind empfangene Daten, nicht inkrementieren (Status, Parameter) {
        // Status ändern state.num++
    }
},
Aktionen: {
	//benutzerdefinierte Methode hinzufügen Kontext ist ein Parameter, Sie können ihn als Instanz von vuex add(context) { behandeln.
    	//Sie können context.commit('Methode, die in Mutationen aufgerufen werden soll') verwenden.
    	Kontext.commit('Inkrement')
    }
}

verwenden

Methode 1 (empfohlen)

importiere { mapState, mapMutations, mapActions } von 'vuex'
Standard exportieren {
  Methoden: {
    ...mapActions([
      'add', // Ordnen Sie `this.add()` `this.$store.dispatch('add')` zu.
      // `mapActions` unterstützt auch Payloads:
      „add“ // ordnet „this.add(amount)“ „this.$store.dispatch(„add“, amount)“ zu.
    ]),
    ...mapActions({
      hinzufügen: 'add' // Ordnen Sie `this.add()` `this.$store.dispatch('increment')` zu
    }),
    Liebe() {
    	// Rufen Sie this.add direkt auf ('Die zu übergebenden Daten werden nicht benötigt.')
    	dies.add(Daten)
    }
  }
}

Methode 2

Methoden: {
    Liebe() {
    	// this.$store.dispatch('benutzerdefinierter Name', 'übergebene Daten dürfen nicht übergeben werden')
    	this.$store.dispatch('Hinzufügen', Daten)
    }
}

Konzept und Verwendung von Gettern

Konzept:

Getter wird verwendet, um die Daten im Speicher zu verarbeiten und neue Daten zu bilden. Getting kann die vorhandenen Daten im Speicher verarbeiten, um neue Daten zu bilden, ähnlich der Berechnungsabkürzung von Vue.

Definition

Zustand: {
  Nummer: 0
},
Getter: {
    erledigtTodos: status => {
    	Rückgabewert: state.num = 10
    }
}

verwenden

Methode 1 (empfohlen)

<div>{{ erledigtAlle }}</div>

importiere { mapState, mapMutations, mapActions, mapGetters } von 'vuex'
Standard exportieren {
  //Berechnungsfunktion berechnet: {
  	...mapState(['Anzahl']),
  	…mapmapGetters(['erledigtAlles'])
  }
}

Methode 2

<div>{{ $store.getters.doneAlle }}</div>

Zusammenfassen

Dieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalt auf 123WORDPRESS.COM lesen können!

Das könnte Sie auch interessieren:
  • Erste Schritte mit Vuex
  • Verwenden Sie immer noch Vuex? Erfahren Sie mehr über Pinia
  • Detailliertes Tutorial zur Verwendung von Aktionen in Vuex
  • Grundlegendes Tutorial zur Installation und Verwendung von VueX
  • Detaillierte Erläuterung der Verwendung von Vuex beim Vue-Lernen
  • Detaillierte Erklärung der Eigenschaften und Funktionen von Vuex
  • So verwenden Sie Vuex in einem Vue-Projekt
  • Detaillierte Erläuterung des Vuex-Gesamtfalls
  • Tiefgreifendes Verständnis der Rolle von Vuex
  • Vuex in einem Artikel verstehen
  • Detaillierte Einführung und Verwendung von Vuex

<<:  Eine einfache Möglichkeit, eine HTML-Fußzeile am unteren Ende der Seite einzufügen

>>:  MySQL-Datenaggregation und -gruppierung

Artikel empfehlen

Zusammenfassung des Speicherorts und Tipps für Docker-Konfigurationscontainer

Tipps zur Verwendung von Docker 1. Bereinigen Sie...

Verwendung von Kubernetes YAML-Dateien

Inhaltsverzeichnis 01 Einführung in YAML-Dateien ...

Hinweise zum Upgrade auf mysql-connector-java8.0.27

Kürzlich wurde bei einem Online-Sicherheitsscan e...

Detaillierte Erklärung zur Verwendung von Filtereigenschaften in CSS3

Als ich kürzlich das Intranet-Portal änderte, sti...

Mit CSS3 erstellte Buchseitenumblättereffekte

Ergebnis:Implementierungscode: html <!-- Wenn ...

Der Unterschied zwischen br und br/ in HTML

Antwort von Stackflow: Einfaches <br> genügt...