vuex:抽离组件的共享状态,单例模式
Vuex 主要有四部分:
- state:包含了
store
中存储的各个状态。(Vuex 使用state
来存储应用中需要共享的状态。为了能让 Vue 组件在state
更改后也随着更改,需要基于state
创建计算属性。) - getter: 类似于 Vue 中的计算属性,根据其他 getter 或 state 计算返回值。
- mutation: 一组方法,是改变
store
中状态的执行者。 - action: 一组方法,其中可以含有异步操作
vue组件中调用this.$store.commit('increment', 10)改变共享变量执行状态
为了简便起见,Vuex 提供了四个方法用来方便的将这些功能结合进组件。
mapState
mapGetters
mapMutations
mapActions