-
state:状态,存放公共数据
-
mutations:更改state的唯一方法就是提交mutation,对state进行操作,改变state中的数据
-
actions:异步操作,异步提交mutation
-
getters:计算属性,结果会缓存
-
modules:模块,把状态管理模块化,各自的组件构成各自的模块
-
plugins:插件,比如引入固化插件进行固化操作
-
辅助函数{mapState,mapMutations,mapGetters,mapActions}
在vue页面中引入辅助函数import {mapState,mapMutations,mapActions,mapGetters} from 'vuex'
-
在computed{}中使用mapState与mapGetters
computed: {
...mapState(["list"]), //state中的数据
...mapGetters(["sumPrice"]), //vuex中的计算方法
}
- 在methods{}中使用mapMutations与mapActions
methods:{
...mapMutations(["changeList"]), //改变state的方法
...mapActions(['asyncSend']) //异步提交mutation
}
注:
- vue中data里的变量优先级比vuex中state优先级高。
- 有时为了避免state中的命名与data中的命名冲突,使用辅助函数时可以用对象的形式来重命名。
- 例:
...mapState({data:'list'})