什么是Vuex?
- 官方说法:Vuex 是一个专为 Vue.js应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。
- 个人理解:Vuex是用来管理组件之间通信的一个插件
为什么要用Vuex?
- 多个视图组件共享一份数据式(全局数据)
- 数据传递过多时,把数据单独拎出来
API 介绍
- State:保存所有的公共数据,相当于组件的data
- Getters:对数据进行过滤后再返回,相当于组件的computed计算属性属性
- Mutations:用来改变数据,内部不建议包含异步操作
- Actions:提交的是 mutation,而不是直接变更状态。内部可以包含异步操作
- Modules:将 store 分割成模块(module)。每个模块拥有自己的 state、mutation、action、getter、甚至是嵌套子模块——从上至下进行同样方式的分割
辅助函数mapState、mapGetters、mapMutations、mapActions用于快速的获取