一、什么是modules?

modules是模块的意思。

为什么要在vuex中使用模块呢?

  • Vue使用单一状态树,那么也意味着很多状态都会交给Vuex来管理。
  • 当应用变得非常复杂时,store对象就有可能变得相当臃肿。
  • 所以vuex允许我们将store分割成模块(modules),而每个模块拥有自己的state、mutations、actions、getters等

就像下面这个意思:

modules:{moduA:{state:{},mutations:{},actions:{},getters:{}}
}

当然了,如果要划分的清晰一点,可以这样做:(在store文件夹下的index.js中)

//创建对象
const moduleA = {state:{name:'aaa'},mutations:{updateName(state,payload){state.name = payload}},actions:{},//第一个参数是state,第二个是getters,第三个是根rootstategetters:{jianame(state){return state.name+'1111'},jianame2(state,getters){return getters.jianame +'222'},jianame3(state,getters,rootstate){return getters.jianame2 + rootstate.counter}}
}
const store = new Vuex.store({state:{counter:'hhhh'},mutations:{},actions:{},getters:{}modules:{a:moduleA
}
})

在使用的组件中:

<template><h3>{{$store.state.a.name}}</h3><h2>{{$store.getters.jianame}}</h2><h2>{{$store.getters.jianame1}}</h2><h2>{{$store.getters.jianame3}}</h2><button @click='Updatename'>修改信息</button>
</template>
<script>export default{name:'app',methods:{Updataname(){this.$store.commit('updateName','bbb')}}}
</script>

commit提交的内容会先去store中的mutations中找,找不到再到模块中去找。定义函数的时候最好不要同名!

modules里的getters可以像上面那样去使用

Vuex-modules的使用相关推荐

  1. vuex modules ajax,VUE项目爬坑---6、vuex的真正存在的意义是什么

    VUE项目爬坑---6.vuex的真正存在的意义是什么 一.总结 一句话总结: a.[避免低效的数据传递]:当多个组件嵌套的时候,只能父子传递,那么中间的组件只能做传递数据之用,数据不是它用,它却传递 ...

  2. vuex modules 命名空间

    主要为了分清每个模块相同名称的方法 用法:export default  {namespaced: true,} 分清模块:导入/方法 转载于:https://www.cnblogs.com/wly- ...

  3. 使用vuejs 2.x (不是nuxt) 做个demo: 使用 vuex, router ( store, action , mutation)

    使用命令创建项目 根据图片提示选择需要的内容,选择vuex router 按空格进行多选 vue create vuex1 cd vuex1 yarn serve 假设,我们有两个页面: " ...

  4. vuex 配置使用解析 mutations响应式规则 Vue.delete/set 目录划分

    文章目录 用处 解析 结构 单一状态树 state getters使用 mutations mutations 提交风格 mutations 响应规则 mutations 常量类型 名称使用常量 mu ...

  5. Vuex 终极秘籍总结

    Vuex 终极秘籍总结 一.什么是Vuex Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 + 库.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发 ...

  6. 使用Vue构建中(大)型应用

    想做SPA就快上车! init 首先要起一个项目,推荐用vue-cli安装 $ npm install -g vue-cli $ vue init webpack demo $ cd demo $ n ...

  7. require.context

    带表达式的 require 语句 如果你的 require参数含有表达式(expressions),会创建一个上下文(context),因为在编译时(compile time)并不清楚具体是哪一个模块 ...

  8. axios传数组到后台_我是如何让公司后台管理系统焕然一新的

    作者:yeyan1996 https://juejin.im/post/5c76843af265da2ddd4a6dd0 写在前面 马上到了金三银四的时间,很多公司开启了今年第一轮招聘的热潮,虽说今年 ...

  9. 前端技巧培训-后台战友快速入门

    前端技巧培训-后台战友快速入门 一.工具 webstorm/vscode node环境/npm (一般安装node自带安装npm的) 可以安装淘宝镜像(下载依赖包比较快) node安装教程 淘宝镜像安 ...

  10. 我是如何让公司后台管理系统焕然一新的(上) -性能优化

    在这个项目中你有遇到什么技术难点,你是怎么解决的? 其实这个问题旨在了解你在遇到问题的时候的解决方法,毕竟现在前端技术领域广,各种框架和组件库层出不穷,而业务需求上有时纷繁复杂,观察一个程序员在面对未 ...

最新文章

  1. Oracle 存储过程之通用分页查询
  2. IE弹出窗口显示URL地址栏
  3. goto是python的保留字吗,基于python goto的正确用法说明
  4. java线程代码实现_Java 多线程代码实现讲解
  5. LeetCode笔记】剑指 Offer 35. 复杂链表的复制(Java、哈希表、原地算法)
  6. 把exe里面的资源通通取出来
  7. 关于go语言的测试相关内容笔记
  8. 单片机4层电梯设计c语言,详解基于单片机的四层电梯控制系统的设计与实现,Proteus仿真和程序代码...
  9. 计算机文化基础考试 名词解释,《计算机文化基础》模拟试卷.doc
  10. 工程伦理网课问答讨论整理
  11. sai厚涂上色教程,sai厚涂绘画人物上色教程!
  12. 做一名有幸福感的计算机教师,做一名有幸福感的教师其实很简单
  13. 北京航空大学计算机录取分数线,北京航空航天大学录取分数线2021是多少分(附历年录取分数线)...
  14. 你的颜值打几分?——基于tensorflow实现人脸打分模型
  15. 在Java语言的if语句是什么表达式,if语句中的条件表达式中只能使用
  16. STM32F103C8T6 0.42寸的OLED屏幕IIC例程
  17. 程序员用300行代码,让外婆实现语音搜索购物
  18. linux 操作系统root账号被锁定的两种解决方法
  19. 1、fluentd安装
  20. win10如何开放端口

热门文章

  1. “复制粘贴”人类大脑到 3D 芯片网络?三星哈佛强强联手中!
  2. mybatis中的参数传递以及使用pagehelper进行分页
  3. 用netbeans ide打开java文件一片空白怎么办?
  4. 实现背景透明文字不透明
  5. 利用命名管道方式使主机与虚拟机的串口通讯
  6. 【Python机器学习】零基础掌握MultiOutputRegressor多输出
  7. 2022年安全生产监管人员考试练习题及答案
  8. 【java官网jdk8-jdk18各版本下载Oracel】
  9. Python后端Flask学习项目实践---搭建一个问答网站
  10. 数据结构之线性表(九)——线性表的应用