Vue有五个核心概念,state
, getters
, mutations
, actions
, modules
。
可以理解为:
state => 基本数据 即Vuex中的基本数据!
getters => 从基本数据派生的数据
mutations => 提交更改数据的方法,同步!
actions => 像一个装饰器,包裹mutations,使之可以异步。
modules => 模块化Vuex
1. state
获取state,通过computed用this.$store.state获取
const store = new Vuex.Store({
state: {
count:0
}
})
const app = new Vue({
//..
store,
computed: {
count: function(){
return this.$store.state.count
}
},
//..
})
每当 store.state.count
变化的时候, 都会重新求取计算属性,并且触发更新相关联的 DOM
mapState辅助函数
// 在单独构建的版本中辅助函数为 Vuex.mapState
import { mapState }