einführenVuex 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 ②CND-Methode<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.js"></script> ③NPM-Methodenpm installiere vuex --save ④GarnmethodeGarn hinzufügen Vuex So verwenden Sie die NPM-Installation1. 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 -nutzungKonzept:Es wird zum Austausch von Daten zwischen Komponenten verwendet. Nur Mutationen können Daten im Speicher ändern. verwenden: Vor der Verwendung definieren DefinitionZustand: { Nummer: 0 } verwendenMethode 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 -verwendungKonzept:Ä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 DefinitionMutationen: //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++ } } verwendenMethode 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 -verwendungKonzept: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:
DefinitionMutationen: //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') } } verwendenMethode 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 GetternKonzept: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. DefinitionZustand: { Nummer: 0 }, Getter: { erledigtTodos: status => { Rückgabewert: state.num = 10 } } verwendenMethode 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> ZusammenfassenDieser 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:
|
<<: Eine einfache Möglichkeit, eine HTML-Fußzeile am unteren Ende der Seite einzufügen
>>: MySQL-Datenaggregation und -gruppierung
Nach dem Kauf eines Alibaba Cloud-Servers müssen ...
Laden Sie das sichere Terminal MobaXterm_Personal...
1. Warum verpacken? Erleichtert das Aufrufen von ...
Es gibt zwei Arten von Webseiten-Boxmodellen: 1: S...
Beim letzten Mal haben wir uns zwei Header-Layout...
In diesem Artikel werden anhand von Beispielen di...
Inhaltsverzeichnis Vorwort 1. So stornieren Sie e...
1. Welche drei Formate? Dies sind: gif, jpg und pn...
Inhaltsverzeichnis Was ist das Beobachtermuster? ...
Dieser Artikel verwendet Javascript + CSS, um den...
Vorwort Dieser Artikel stellt hauptsächlich die r...
Wie lösche ich Umgebungsvariablen unter Linux? Ve...
bmi Voyager Heugabel Ulster Lebensmittelhändler F...
//Standardprotokoll /Die Verwendung des Standardp...
Wie deinstalliere ich Mysql vollständig? Befolgen...