Hilfsfunktion 1. Verwenden Sie mapGetter nicht, um den Getter in vuex in der Komponente oder Schnittstelle aufzurufen1.1 Rufen Sie den Getter im Stammspeicher des Mappings auf<!-- test.vue --> <Vorlage> <div Klasse="vuexResponse"> <div @click="changeVal">Klick</div> <div>"stateHello: "{{stateHello}}</div> <div>"gettersHello: "{{gettersHello}}</div> </div> </Vorlage> <Skript> Standard exportieren { betrachten: gettersHello(newVal, oldVal) { console.log("gettersHallo neuesVal", neuesVal); console.log("gettersHallo altesVal", altesVal); } }, berechnet: { ZustandHallo() { gib dies zurück.$store.state.stateHallo }, gettersHello() { gib dies zurück.$store.getters.gettersHallo } }, Methoden: { changeVal() { dies.$store.commit("mutationsHallo", 2) } } } </Skript> /** * store.js */ Vue von „vue“ importieren Vuex von „vuex“ importieren Vue.Verwenden(Vuex) exportiere standardmäßig neuen Vuex.Store({ Zustand: { ZustandHallo: 1 }, Getter: { GetterHallo: (Status) => { returniere state.stateHello * 2 } }, Mutationen: mutationsHello(Zustand, Wert) { konsole.log("Wert", Wert); // 2 Zustand.stateHello += val } }, }) Vorgang: Klicken Sie, um changeVal() in der Schnittstelle test.vue aufzurufen. Die Methode changeVal übergibt den Parameter val durch committe und ruft die Methode mutationsHello() in store.js auf. Die Methode mutationsHello ändert den Wert von stateHello in state. Der Wert von stateHello wird in gettersHello von Gettern überwacht. Die Änderung des Werts von stateHello löst gettersHello aus. In der berechneten Schnittstelle test.vue wird store.getters.gettersHello berechnet, wodurch gettersHello dem Wert von store.gettes.gettersHello zugeordnet wird. GettersHello wird über die Vorlage in das Dom gerendert. Gleichzeitig kann die Änderung von gettersHello auch gettersHello in watch auslösen, wodurch die Datenänderungen von store.getters.gettersHello überwacht werden. 1.2 Rufen Sie den Getter im Modulspeicher des Mapping-Moduls auf<!-- moduleTest.vue --> <Vorlage> <div Klasse="vuexResponse"> <div @click="changeVal">Klick</div> <div>ZustandHallo: {{ZustandHallo}}</div> <div>gettersHello: {{gettersHello}}</div> </div> </Vorlage> <Skript> Standard exportieren { betrachten: gettersHello(newVal, oldVal) { console.log("gettersHallo neuesVal", neuesVal); console.log("gettersHallo altesVal", altesVal); } }, berechnet: { ZustandHallo() { gib dies zurück.$store.state.vuexTest.stateHallo }, gettersHello() { gib dies zurück.$store.getters['vuexTest/gettersHello'] } }, Methoden: { changeVal() { dies.$store.commit("vuexTest/mutationsHello", 2) } } } </Skript> /** * Modul vuexTest.js */ Standard exportieren { Namespace: wahr, Zustand: { ZustandHallo: 1, }, Getter: { gettersHello: (Status, Getter, Root-Status, Root-Getter) => { console.log("Status", Status); console.log("Getter", Getter); console.log("Wurzelstatus", Wurzelstatus); console.log("rootGetters", rootGetters); returniere state.stateHello * 2 } }, Mutationen: mutationsHello(Zustand, Wert) { konsole.log("1111"); Konsole.log("Wert", Wert); Zustand.stateHello += val } }, Aktionen: { } } Es ist zu beachten, dass sich die Methode zum Berechnen der Getter im Mapping-Modul in „Berechnet“ von der Methode zum Abrufen der Daten im Status des Moduls unterscheidet. dies.$store.getters['vuexTest/gettersHello'] 2. Verwenden Sie mapGetter, um den Getter in vuex in der Komponente oder Schnittstelle aufzurufen2.1 Rufen Sie den Getter im Stammspeicher des Mappings auf/** * store.js */ Vue von „vue“ importieren Vuex von „vuex“ importieren Vue.Verwenden(Vuex) exportiere standardmäßig neuen Vuex.Store({ Zustand: { ZustandHallo: 1 }, Getter: { GetterHallo: (Status) => { returniere state.stateHello * 2 } }, Mutationen: mutationsHello(Zustand, Wert) { Zustand.stateHello += val } }, }) <!-- Test.vue --> <Vorlage> <div Klasse="vuexResponse"> <div @click="changeVal">Klick</div> <div>ZustandHallo: {{ZustandHallo}}</div> <div>gettersHello: {{gettersHello}}</div> <div>gettersHelloOther {{gettersHelloOther}}</div> </div> </Vorlage> <Skript> importiere { mapGetters } von "vuex"; Standard exportieren { Name: "vuexReponse", Komponenten: }, Daten() { zurückkehren { } }, betrachten: gettersHello(newVal, oldVal) { console.log("gettersHallo neuesVal", neuesVal); console.log("gettersHallo altesVal", altesVal); } }, berechnet: { ZustandHallo() { gib dies zurück.$store.state.stateHallo }, ...mapGetters(["gettersHello"]), // Array-Form ...mapGetters({ // Objektform gettersHello: "gettersHello" }), ...mapGetters({ gettersHelloOther: "gettersHello" // Ändere die Zuordnung in Objektform }), }, Methoden: { changeVal() { dies.$store.commit("mutationsHallo", 2) } } } </Skript> 2.2 Aufruf des Getters im Root Store des Mappings/** * vuexTest.js */ Standard exportieren { Namespace: wahr, Zustand: { ZustandHallo: 1, }, Getter: { gettersHello: (Status, Getter, Root-Status, Root-Getter) => { console.log("Status", Status); console.log("Getter", Getter); console.log("Wurzelstatus", Wurzelstatus); console.log("rootGetters", rootGetters); returniere state.stateHello * 2 } }, Mutationen: mutationsHello(Zustand, Wert) { konsole.log("1111"); Konsole.log("Wert", Wert); Zustand.stateHello += val } }, Aktionen: { } } <!-- Modul test.vue --> <Vorlage> <div Klasse="vuexResponse"> <div @click="changeVal">Klick</div> <div>ZustandHallo: {{ZustandHallo}}</div> <div>gettersHello: {{gettersHello}}</div> <div>gettersHelloOther {{gettersHelloOther}}</div> </div> </Vorlage> <Skript> importiere { mapGetters } von "vuex"; Standard exportieren { Name: "vuexReponse", betrachten: gettersHello(newVal, oldVal) { console.log("gettersHallo neuesVal", neuesVal); console.log("gettersHallo altesVal", altesVal); } }, berechnet: { ZustandHallo() { gib dies zurück.$store.state.vuexTest.stateHallo }, ...mapGetters(["vuexTest/gettersHello"]), // Array-Form...mapGetters("vuexTest", { // Objektform gettersHello: "gettersHello" }), ...mapGetters("vuexTest", { gettersHelloOther: "gettersHello" // Ändere die Zuordnung in Objektform }), }, Methoden: { changeVal() { dies.$store.commit("vuexTest/mutationsHello", 2) } } } </Skript> Diese drei Formen ... mapGetters(["vuexTest/gettersHello"]), // Array-Form ... mapGetters("vuexTest", { // Objektform gettersHello: "gettersHello" }), ...mapGetters("vuexTest", { gettersHelloOther: "gettersHello" // Ändere die Zuordnung in Objektform }), Damit ist dieser Artikel über die grundlegende Verwendung der Hilfsfunktion mapGetters in vuex abgeschlossen. Weitere relevante Inhalte zur Verwendung von vuex mapGetters 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:
|
<<: Verstehen von MySQL-Deadlock-Routinen durch eindeutige Index-S-Sperre und X-Sperre
>>: So verbergen und fälschen Sie die Versionsnummer in Nginx
Rot und Pink und ihre Hexadezimalcodes. #990033 #...
1. Installieren Sie Tomcat 1. Suchen Sie das Tomc...
Einführung Ich habe eine Zeit lang die PostgreSQL...
Überblick Die Indizierung ist eine Fähigkeit, die...
In diesem Artikel wird hauptsächlich der Beispiel...
Hyperlink Hyperlinks sind die am häufigsten verwen...
Inhaltsverzeichnis Herkunft Status Quo Anfrage ab...
Auf dem Server läuft ein Taskprozess. Wenn wir ih...
Einführung in Vue und Vue-Router <script src=&...
Die Webseite zeigt 403 Forbidden an Nginx (Yum-In...
Reproduktion des Problems Beim Bearbeiten mit HTM...
Inhaltsverzeichnis Was ist ein Containerdatenvolu...
Einführung: Die Konfiguration von Docker, auf dem...
Und oft ist es für Wartungsarbeiten erforderlich, ...
Warum kann es die Höhe festlegen, aber im Gegensat...