Heim > Web-Frontend > js-Tutorial > So verwenden Sie Vuex zum Bedienen von Statusobjekten

So verwenden Sie Vuex zum Bedienen von Statusobjekten

php中世界最好的语言
Freigeben: 2018-06-06 10:09:37
Original
1451 Leute haben es durchsucht

Dieses Mal zeige ich Ihnen, wie Sie Vuex zum Betreiben von Zustandsobjekten verwenden und welche Vorsichtsmaßnahmen für die Verwendung von Vuex zum Betreiben von Zustandsobjekten gelten. Das Folgende ist ein praktischer Fall, schauen wir uns das an.

Was ist Vuex?

VueX ist eine Zustandsverwaltungsarchitektur, die speziell für Vue.js-Anwendungen entwickelt wurde und den veränderlichen Zustand jeder Vue-Komponente einheitlich verwaltet und aufrechterhält (Sie können darunter einige Daten in der Vue-Komponente verstehen).

Vue verfügt über fünf Kernkonzepte: Zustand, Getter, Mutationen, Aktionen und Module.

Zusammenfassung

Status => Basisdaten
Getter => Aus Basisdaten abgeleitete Daten
Mutationen => Methode zum Übermitteln geänderter Daten, synchron!
Aktionen => Wie ein Dekorateur, der Mutationen umhüllt, um sie asynchron zu machen.
Module => Modulares Vuex

Zustand

Zustand sind die Grunddaten in Vuex!

Einzelner Zustandsbaum

Vuex verwendet einen einzelnen Zustandsbaum, das heißt, ein Objekt enthält alle Zustandsdaten. Als Konstruktoroption definiert state alle grundlegenden Zustandsparameter, die wir benötigen.

Rufen Sie das Vuex-Attribut in der Vue-Komponente ab

• Wir können den Vuex-Status über Vue's Computed wie folgt abrufen:

const store = new Vuex.Store({
  state: {
    count:0
  }
})
const app = new Vue({
  //..
  store,
  computed: {
    count: function(){
      return this.$store.state.count
    }
  },
  //..
})
Nach dem Login kopieren

Werfen wir einen Blick auf die vuex operation state object Der Beispielcode

Immer wenn sich store.state.count ändert, werden die berechneten Eigenschaften erneut abgerufen und das zugehörige DOM aktualisiert.

Der Kern jeder Vuex-Anwendung ist der Store.

Ich zitiere zwei Sätze aus der offiziellen Dokumentation zur Beschreibung von Vuex:

1. Der Zustandsspeicher von Vuex reagiert. Wenn eine Vue-Komponente den Status aus dem Store liest und sich der Status im Store ändert, wird die entsprechende Komponente entsprechend effizient aktualisiert.

2. Sie können den Status im Shop nicht direkt ändern. Die einzige Möglichkeit, den Status im Speicher zu ändern, besteht darin, explizit eine Mutation zu begehen. Dies ermöglicht es uns, jede Zustandsänderung einfach zu verfolgen und einige Tools zu implementieren, die uns helfen, unsere Anwendung besser zu verstehen.

Verwenden Sie den Status in Vuex

1, führen Sie Store in der Stammkomponente ein, dann kann die Unterkomponente dies global über this.$store.state.data abrufen Namensattribut.

Das Projekt, das ich mit vue-cli erstellt habe, App.vue ist die Stammkomponente

Der Code von App.vue

<template>
 <p id="app">
   <h1>{{$store.state.count}}</h1>  
  <router-view/>
 </p>
</template>
<script>
 import store from '@/vuex/store';
export default {
 name: 'App',
 store
}
</script>
<style>
</style>
Nach dem Login kopieren

Count.vue-Code im Komponentenordner

<template>
 <p>
   <h3>{{this.$store.state.count}}</h3>
 </p>
</template>
<script> 
  export default {
    name:'count',
  }
</script>
<style scoped>
</style>
Nach dem Login kopieren

Store.js-Code

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex);
const state = {
 count: 1
}
export default new Vuex.Store({
 state,
})
Nach dem Login kopieren

2, globale Attribute über die MapState-Hilfsfunktion abrufen

Der Vorteil dieser Methode besteht darin, dass Sie den Attributnamen direkt verwenden können, um das Attribut abzurufen Wert .

Ändern Sie den Code von Component.vue

<template>
 <p>
   <h3>{{this.$store.state.count}}--{{count}}</h3>
  <h4>{{index2}}</h4>
 </p>
</template>
<script> 
  import { mapState,mapMutations,mapGetters } from "vuex";
  export default {
    name:'count',
    data:function(){
      return {
        index:10
      }
    },
    //通过对象展开运算符vuex里的属性可以与组件局部属性混用。
    computed:{...mapState(['count']),
      index2() {
        return this.index+30;
      }  
    } ,
  }
</script>
<style scoped>
</style>
Nach dem Login kopieren

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln zu PHP Chinesische Website!

Empfohlene Lektüre:

Wie man Vue-Dateien analysiert

Wie man Vue optimiert

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Vuex zum Bedienen von Statusobjekten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage