Vuex是一个专为Vue.js应用程序开发的状态管理模式。每一个Vuex应用的核心是store,它包含着大部分的state
1. Vuex的存储是响应式的。store中改变,获取的地方也会改变。
2.改变store的唯一方法就是显示地提交commit mutation
主要包括以下几个模块:
State:
一、Vuex就是一个仓库,仓库里面放了很多对象。其中state就是数据源存放地,对应于与一般Vue对象里面的data
二、state里面存放的数据是响应式的,Vue组件从store中读取数据,若是store中的数据发生改变,依赖这个数据的组件也会发生更新
三、它通过mapState把全局的 state 和 getters 映射到当前组件的 computed 计算属性中
Getter:
一、getters 可以对State进行计算操作,它就是Store的计算属性
二、 虽然在组件内也可以做计算属性,但是getters 可以在多组件之间复用
三、 如果一个状态只在一个组件内使用,是可以不用getters
Mutation:
一、Action 类似于 mutation,不同在于:
二、Action 提交的是 mutation,而不是直接变更状态。
三、Action 可以包含任意异步操作
Action:用于提交mutation,可以异步
Module: 允许将单一的Store拆分为多个store,且同时保存在单一的状态树中