vuex 是 vue 的状态管理工具 管理项目中的公共数据 能够在所有的组件中使用
一共有五大核心有satste、mutations、getters、actions、modules。
vuex的五大核心:
state 存放公共数据的地方 通过 this.$store.state.xxx调用。
mutations 修改 state 的地方 只有这里能修改 通过this.$store.commit 调用。
getters 相当于是之前的计算属性 通过 this.$store.getters 调用。
actions 执行异步操作的地方 通过 this.$store.dispatch 调用。
modules 模块化。
vuex的4个辅助函数:
mapState、mapGetters、mapMutations、mapActions
1.mapState、mapGetters放在computed里面使用
2.mapMutations、mapActions放在methods里面使用
缺点:
1.适合中大型项目
2.刷新的时候数据会丢失
解决方法:
我们为了保证刷新数据不丢失,需要使用固化插件
如果不让我们使用固化工具,实现持久化存储;
只需要在调用mutations方法的时候保存一下就可以了
在modules里开启命名空间:namespaced: true。防止名字重复