vuex 是一个状态管理工具 用于解决大型项目的数据共享问题 --后期方便管理以及维护
有五个属性分别是:state , getters , mutations , actions modules
state 属性:存放数据,
getters : 计算属性 可以通过this.$store.getters 来获取存放在state 里面的数据
mutations:唯一能够改变state 的状态就是mutattions 来改变 用 this.$store.commit()
actions : 异步mutations , 可以通过dispatch 来分发 从而改变state 里面的事件中有context :参数 ,是vuex的数实列对象
modules : 分模块处理
高级用法-数据持久化
vuex里面存放的数据,页面一经刷新会丢失:
解决办法: 存放在localStorage或者sessionStorage里面,进入页面时判断是否丢失,丢失再去localStorage或者sessionStorage里面取;在vuex中可以通过安装vuex-persistedstate 插件,进行持久化的配置就行
高级用法-辅助函数(语法糖)
1. 有那几个辅助函数(4大金刚)
mapState,----mapActions,-----mapMutations-----,mapGetters
2. 辅助函数可以把vuex中的数据和方法映射到vue组件中。达到简化操作的目的3. 如何使用: mapState需要调用到计算属性compute里
Import { mapActions, mapGetters, mapMutations, mapState } from 'vuex'