vuex:是一个专为vue.js开发的状态管理器,采用集中式储存的所有组件状态,通过vuex我们可以解决组件之间数据共享的问题,后期也方便我们管理及维护
五个属性:
state、getters、mutations、actions、module
state:存放状态,用来储存你的数据和变量
getters:计算属性,可以通过this.$store.getters来获取存放在state里面的数据
mutations:唯一能改变state的状态就是通过提交mutations来改变this.$store.commit()
actions:异步的mutations可以通过dispatch来分发从而改变state里面的事件中有context参数,是vuex的实例对象
module:分模块处理
数据持久化
vuex里面存放的数据,页面一经刷新就会丢失:
解决办法:存放在localStorage或者sessionStorage里面,进入页面判断是否丢失,丢失再去localStorage或者sessionStorage里面取;
在vuex中可以通过安装vuex-persistedstate插件,进行持久化的配置就行
辅助函数
有哪几个辅助函数:
mapState,mapActions,mapMutations,mapGetters
1. 辅助函数可以把vuex中的数据和方法映射到vue组件中。达到简化操作的目的2. 如何使用: mapState需要调用到计算属性compute里
Import { mapActions, mapGetters, mapMutations, mapState } from 'vuex'