Vuex:
五种状态: state : 用于存储全局共享的状态数据 mutations 用于提供一些方法,修改state中的状态数据 actions 用于提供一些方法,异步做了一些耗时任务后 getters 用于提供一些方法,方便的获取state中数据的临时计算结果,类似于vue中的计算属性:computed modules 模块化 例如: 用户模块 ,创建userModule.js 引入到vuex的index页面,声明:modules:{userModule}
> 使用模块化访问模块的state:
userModule.js 需要配置一个命名空间:namespaced: true
使用时候通过: this.$store.state.userModule.user 可以访问userModule.js中的state的user对象
或者使用辅助函数:
导入辅助函数:import { mapState } from 'vuex'
通过在计算属性中解构mapState: ...mapState('userModule', ['user']) 返回vuex的userModule模块中保存的user对象
> 使用模块化访问模块的mutations:
使用时候通过this.$store.commit('userModule/updateUserInfo',user) 调用userModule模块下mutations中的updateUserInfo方法
或者使用辅助函数:
导入辅助函数:import { mapMutations } from 'vuex'
通过在methods中解构mapMutations: ...mapMutations('userModule', ['updateUserInfo']),
在其他方法中使用this.updateUserInfo(res.data.data.user)