Vuex
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。
Vuex 使用过程演示
以vue-cli3新创建出来的项目为例,演示 Vuex 的使用过程。
创建项目:
1 2 3
   | vue create vuex-test cd vuex-test npm run serve
   | 
 
安装vuex:
进入项目的src/下新建一个文件store/index.js,并写入:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
   |  import Vue from "vue"; import Vuex from "vuex";
  Vue.use(Vuex);
  const store = new Vuex.Store({      state: {          count: 0,   },   mutations: {          increment(state) {       state.count++;     },   }, }); export default store; 
 
  | 
 
进入main.js 注入store,使所有vue组件能够使用vuex :
1 2 3 4 5 6 7 8 9 10 11 12 13
   |  import Vue from "vue"; import App from "./App.vue"; import router from "./router"; import store from "./store";
  Vue.config.productionTip = false;
  new Vue({   router,   store,   render: (h) => h(App), }).$mount("#app");
 
  | 
 
现在我们可以从组件的方法提交一个变更:
1 2 3 4 5 6
   | methods: {   increment() {     this.$store.commit('increment')      console.log(this.$store.state.count)   } }
  | 
 
在组件模板中使用状态:
1 2 3
   | {{ count }}
  computed: { count() { return this.$store.state.count } }
  | 
 
state 状态的改变会触发 computed 的重新计算