KartenstaatWenn eine Komponente mehrere Zustände abrufen muss, wäre die Deklaration aller dieser Zustände als berechnete Eigenschaften etwas repetitiv und redundant. Um dieses Problem zu lösen, können wir die Hilfsfunktion mapState verwenden, die uns beim Generieren berechneter Eigenschaften hilft. Wenn mapState nicht verwendet wird, wird der Objektstatus abgerufen, normalerweise in der Computes-Eigenschaft der verwendeten Komponente, und wird wie folgt verwendet: //.... berechnet: { zählen: Funktion(){ gib dies zurück.$store.state.count } } //.... Mit mapState kann dies wie folgt vereinfacht werden: importiere { mapState } von 'vuex' //MapState-Objekt einführen export default { // ... berechnet: mapState({ // Pfeilfunktionen können den Code prägnanter machen zählen: state => state.count, }) } Oder importiere { mapState } von 'vuex' //Führe mapState-Objekt ein export default { // ... berechnet: mapState({ 'count', // im Einklang mit dem Statusnamen countAlias: 'count' // countAlias ist der in der Referenzkomponente verwendete Alias}) } KartengetterDie Hilfsfunktion „mapGetters“ ordnet Getter im Store einfach lokal berechneten Eigenschaften zu, ähnlich dem Status. Der Code der Berechnungsfunktion wird wie folgt vereinfacht: importiere { mapGetters } von 'vuex' Standard exportieren { // ... berechnet: { // Verwenden Sie den Object Spread Operator, um Getter in das berechnete Objekt zu mischen...mapGetters([ 'AnzahlDouble', 'Doppelte und doppelte Anzahl', //.. ]) } } MapGetters können auch Aliase verwenden. KartenmutationenVerwenden Sie die Hilfsfunktion mapMutations, um die Methoden in der Komponente store.commit-Aufrufen zuzuordnen. Der vereinfachte Code lautet: importiere { mapMutations } von 'vuex' Standard exportieren { //.. Methoden: { …mapMutations([ „Inkrement“ // Ordnen Sie this.increment() diesem.$store.commit(„Inkrement“) zu. ]), ...mapMutations({ hinzufügen: 'Inkrement' // Ordnen Sie this.add() diesem.$store.commit('Inkrement') zu. }) } } KartenaktionenVerwenden Sie die Hilfsfunktion mapActions, um Komponentenmethoden store.dispatch-Aufrufen zuzuordnen. Der vereinfachte Code lautet: importiere { mapActions } von 'vuex' Standard exportieren { //.. Methoden: { ...mapActions([ 'incrementN' //Ordnen Sie this.incrementN() diesem.$store.dispatch('incrementN') zu. ]), ...mapActions({ hinzufügen: 'incrementN' //Ordnen Sie this.add() diesem.$store.dispatch('incrementN') zu. }) } } Beispiel Dies geschieht nach dem Vorbild von Vue State Management (II) über Hilfsfunktionen. In den Komponenten CountChange und ComputeShow werden Hilfsfunktionen verwendet und der restliche Code muss nicht geändert werden. <Vorlage> <div align="center" style="Hintergrundfarbe: bisque;"> <p>Nachfolgend erfahren Sie, wie Sie mit computed die Statusdaten direkt in Geschäften abrufen und bei einer Änderung der Statusdaten synchron aktualisieren können.</p> <h1>Berechneten Wert verwenden, um Status abzurufen: {{ computedState }}</h1> <h1>Verwenden Sie Calculated, um Getter zu erhalten: {{ computedGetters }}</h1> </div> </Vorlage> <Skript> importiere { mapState,mapGetters } von 'vuex' //Führe mapState,mapGetters-Objekte ein exportiere default { Name: 'ComputeShow', berechnet:{ ...mapState({ berechneterZustand:'Anzahl' //Alias: berechneterZustand }), ...mapGetters({ computedGetters:'getChangeValue' //Alias: computedGetters }) } } </Skript> <Stil> </Stil> Es empfiehlt sich bei der Verwendung einer Karte einen Alias anzugeben, um eine Entkopplung von den Inhalten der Stores zu erreichen. In CountChange werden zwei Hilfsfunktionen verwendet, mapMutations und mapActions. Der Code lautet wie folgt <Vorlage> <div ausrichten="zentrieren"> <Eingabetyp="Zahl" v-Modell="ParamWert" /> <button @click="addNum({res: parseInt(paramValue)})">+Erhöhen</button> <button @click="subNum">-Verringern</button> </div> </Vorlage> <Skript> importieren { Kartenmutationen, Kartenaktionen } von 'vuex' //mapMutations einführen, mapActions-Objekte standardmäßig exportieren { Name: 'CountChange', Daten() { zurückkehren { Parameterwert: 1, } }, Methoden: { ...mapMutations({ subNum: 'sub' //Alias subNum hinzufügen }), ...mapActions({ addNum: 'increment' //Ordnen Sie this.incrementN() diesem.$store.dispatch('incrementN') zu. }) } } </Skript> <Stil> </Stil> Geben Sie den Methoden in Speichern auf ähnliche Weise Aliase, und wenn Parameter übergeben werden müssen, übergeben Sie sie über Aliase an Aktionen oder Mutationen. Beispielsweise sendet "addNum({res: parseInt(paramValue)})" ein Objekt {res: ''} ZusammenfassungDie Hilfsfunktion selbst hat keine neue Bedeutung und dient hauptsächlich der Vereinfachung des Codes bei der Verwendung von State, Gettern, Mutationen und Actions. Oben sind die Einzelheiten des detaillierten Beispiels der Statusverwaltung von Hilfsfunktionen in der Vue-Frontend-Entwicklung aufgeführt. Weitere Informationen zur Statusverwaltung von Vue-Hilfsfunktionen finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Erstellen, Hochladen, Abrufen und Bereitstellen von Docker-Images (mithilfe von Alibaba Cloud)
>>: So aktivieren Sie die MySQL-Remoteverbindung
Bei der Designarbeit höre ich oft, dass an der Übe...
In MySQL gibt es eine Funktion namens „group_conc...
HTML-Funktionsprinzip: 1. Lokaler Vorgang: Öffnen...
1. Ändern Sie den Host-Feldwert eines Datensatzes...
Vor Kurzem musste ich den Server erneut einem Str...
Auf dem heimischen Markt besteht noch immer ein g...
Inhaltsverzeichnis Vorwort Rendern Beispielcode Z...
Die Ladegeschwindigkeit einer Webseite ist ein wic...
Inhaltsverzeichnis Vorwort Browser kompilierte Ve...
Das sogenannte Verbindungslimit in Nginx ist tats...
Datensicherung und -wiederherstellung Teil 3, Det...
Eigentlich ist das ganz einfach. Wir fügen ein a-...
Inhaltsverzeichnis 1. Einleitung 2. Bereiten Sie ...
Lernpläne werden leicht unterbrochen und es ist s...
Einführung: Die Nachteile der Speicherung aller D...