# 第1题-说一说vuex是什么-每个属性是干嘛的以及如何使用
Vue是集中管理项目公共数据的,Vuex有state,mutations,getters,actions,module属性
state属性用来存储公共管理的数据
mutaions属性改变state中数据的方法
注意: 不要在mutaions中的方法中写异步方法ajax,那样数据就不可跟踪了
getters属性可以认为是定义store的计算属性,就像计算属性一样,getter的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变
才会被重新计算
action:属性类似mutaion,不同于Action提交的是mutaion,而不是直接变更状态
Action可以包含任意异步操作,module属性时将store分割成模块,每个模块拥有自己的state,mutaion,action,getter甚至是嵌套子模块
从上至下进行方式的分割
使用方法:state:直接以对象方式添加属性:mutations,通过store.commit调用action,通过store.dispatch,方法触发getters,直接通过store.getters调用
可以使用mapState,mapMutations,mapAction,mapGetters一次性获取每个属性下对应的多个方法
Vuex在大型项目中比较常用,非关系组件传递数据通信比较方便


