每个vuex的应用的核心都是store(仓库),store基本上就是一个容器,它包含着你的应用中大部分的状态(state),vuex和单纯的全局对象有如下两点不一样:html
1,vuex的状态存储是响应式的。当vue组件从store中读取状态的时候,若store中的状态发生变化,那么相应的组件也会相应的获得高效更新。vue
2,你不能直接改变store中的状态。改变store中的状态的惟一途径就是显式的提交(commit)mutations.这样使得咱们能够方便的跟踪每个状态的变化,从而让咱们可以实现一些工具帮助咱们更好的了解咱们的应用。vuex
安装 Vuex 以后,让咱们来建立一个 store。建立过程直截了当——仅须要提供一个初始 state 对象和一些 mutations:工具
const store = new Vuex.Store({htm
state:{对象
count:0rem
},get
mutations:{it
increment(state){io
state.count++
}
}
})
如今,你能够经过store.state来获取状态对象,以及经过store,commit方法触发状态变动
store.commit('icrement')
console.log(store.state.count)
再次强调,咱们经过提交mutation的方式,而非直接改变store.state.count,是由于咱们想要更明确地追踪到状态变化,这个简单的约定能让你的意图更加明显,这样你在阅读代码的时候能更容易的解读应用内部的状态改变,