vue之vuex全局状态管理

vuex全局状态管理

官方文档对vuex的解释 :

第一:Vuex 的状态存储是响应式的。当 Vue 组件从 store 中读取状态的时候,若 store 中的状态发生变化,那么相应的组件也会相应地得到高效更新。

第二:你不能直接改变 store 中的状态。改变 store 中的状态的唯一途径就是显式地提交 (commit) mutation。这样使得我们可以方便地跟踪每一个状态的变化,从而让我们能够实现一些工具帮助我们更好地了解我们的应用。

自我理解

vuex就是一个公共仓库,所有页面都可以使用他里面的数据和方法;也可以响应式的改变state里面的内容;
当然,通过地址栏传参的方式也可以获取到另外一个页面的数据;俗称路由传参;但是通过路由传参,这个所传递的数据并不能被所有页面使用;只能传递给哪个页面,哪个页面才能使用,而vuex是谁想使用就使用只用安装好,把state(其就相当于data)里面的数据指定好,以及mutations(其就相当于methods)里面的方法制定好即可。

对于vuex你可以通过 store.state 来获取状态对象;通过 store.commit 方法触发状态变更;

官方举例:
首选,我们要安装vuex;
其次使用他,
安装 Vuex 之后,让我们来创建一个 store。创建过程直截了当——仅需要提供一个初始 state 对象和一些 mutation:

// 如果在模块化构建系统中,请确保在开头调用了 Vue.use(Vuex)

const store = new Vuex.Store({
  state: {
    count: 0
  },
  mutations: {
    increment (state) {
      state.count++
    }
  }
})

现在,你可以通过 store.state 来获取状态对象,以及通过 store.commit 方法触发状态变更:

store.commit('increment')

console.log(store.state.count) // -> 1

你可能感兴趣的:(vue,vuex)