Vuex 模块化 store和namespaced

news/2025/1/8 8:46:19/文章来源:https://www.cnblogs.com/wt7018/p/18658889

一、模块化

1、几个组件定义几个对象

文件 src/store/index.js

// 与count组件相关的optinos
const  countOptions = {actions:{},mutations:{},state:{},getters:{}
}
// 与person组件 相关的options
const personOptions = {actions:{},mutations:{},state:{},getters:{}
}

2、把之前相关联的内容填充,注意每个对象都要加 namespaced: true,

// 与count组件相关的optinos
const  countOptions = {
namespaced: true,actions:{addOdd(context, value){
if(context.state.sum % 2){context.commit('ADD', value)}},addWait(context, value){setTimeout(() => {context.commit('ADD', value)}, 500)}},mutations:{ADD(state, value){// console.log(state.sum, value)state.sum += value},SUB(state, value){state.sum -= value},},state:{sum:0,name: "jojo",},getters:{bigSum(state){return state.sum * 10}} } // 与person组件 相关的options const personOptions = {
namespaced: true,actions:{},mutations:{ADD_PERSON(state, value){state.personLst.unshift(value)},},state:{personLst:[{id:
"001", name:"张三"}]},getters:{} }

3、修改暴露  使用 modules

export default new Vuex.Store({modules:{countOptions,personOptions}
})

二、使用

1、mapState和mapGetters 想要正常使用需要添加 定义的对象

computed:{...mapState('countOptions' ,['name', 'sum']),...mapState('personOptions', ["personLst"]),...mapGetters('countOptions',["bigSum"])
}

2、mapActions和mapMutations 想要正常使用,需添加index.js中定义的对象

methods:{...mapActions('countOptions',{addNumOdd:"addOdd", addNumWait:"addWait"}),...mapMutations('countOptions',{addNum:"ADD", subisNum:"SUB"}),
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/865740.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

若依框架(ruoyi-master)——13.Nacos,使用服务注册和服务诶只

若依(Ruoyi)框架中如何使用Nacos?若依框架的微服务版项目启动 Nacos下载和启动 Nacos服务注册和配置接下来,我们可以查看若依框架微服务版如何使用Nacos? 前提JDK >= 1.8 (推荐1.8版本) Mysql >= 5.7.0 (推荐5.7版本)\Redis >= 3.0 Maven >= 3.0 Node >= 1…

芯片半导体基础(一):真空二极管、三极管工作原理

liwen01 2025.01.05 前言 半导体的前身是真空管,在集成电路被发明前,真空管被广泛应用于收音机、电话、无线电、雷达、电视、电子计算机等电子设备中。 真空管也叫电子管,在不同的资料中称呼可能不一样,这里我们统称为真空管。 因为翻译的原因,Triode 三极管实际指代的是真…

人类讨厌AI的缺点,其实自己也有,是时候反思了。

马特科拉默摄于Unsplash前言:人类讨厌AI,其实就是讨厌自己! 如果你问一些人对人工智能的看法,你可能会听到诸如不道德、偏见、不准确甚至操纵这样的词语。 人工智能因为种种原因正备受批评。它让一些人类的任务变得无用,甚至可能导致工作岗位的消失。和往常一样,富人通过…

掌握设计模式--桥接模式

桥接设计模式(Bridge Pattern)是一种结构型设计模式,它通过将抽象部分与实现部分分离,使它们可以独立地变化。这种模式特别适合于需要在多个维度上扩展的场景,避免了类爆炸(类的数量随着组合需求呈指数级增长)的情况。 核心思想抽象部分:定义对象的主要功能或者高层操作…

集训记录 1.7

集训记录 1.7 感觉最近效率好低啊。 打了几场省选模拟赛,几乎都垫底了。 主要是图论,贪心和博弈,其他的没怎么写,感觉DP以后有必要补,字符串和网络流暂时放一放。 【模板】最大流 EK和Dinic都学了,后者写的比较熟。Dinic #include<bits/stdc++.h> using namespace …

读数据保护:工作负载的可恢复性29新式的数据保护方案

新型数据保护方案1. 新式的数据保护方案 1.1. 产品都是围绕着磁盘设计的1.1.1. 许多产品只支持磁盘,另一些虽然支持磁带,但仍然是以磁盘为主的1.1.2. 产品都把磁盘作为首要的备份目标(而且通常只支持把数据备份到磁盘上)​1.2. 除了以磁盘为中心,这些产品还有一个共同之处…

WPF 测试 GlyphTypeface 的 Baseline 行为

本文将对 WPF 进行 GlyphTypeface 的 Baseline 行为测试。经过测试发现行为非常符合预期,这个值乘以字号就是基线本文内容里面只给出关键代码片段,如需要全部的项目文件,可到本文末尾找到本文所有代码的下载方法 前置博客: WPF 简单聊聊如何使用 DrawGlyphRun 绘制文本大飞…

OpenVX功能参数分析

3. 节点参数节点创建函数的参数定义为原子类型,如vx_int32、vx_enum,或对象,如vx_scalar、vx_image。框架应将节点创建功能的原子变量转换为vx_scalar引用,供节点使用。vx_scalar类型的节点参数,可以在图形执行期间更改;而如果改变原子类型的节点参数(vx_int32等),则至…

OpenVX参数节点执行独立性

8.节点执行独立性 在如图2-5所示例中,客户端根据输入图像、梯度幅度和梯度相位。OpenVX并不要求并行运行,但可以由OpenVX供应商实现。 图2-5 具有一些独立节点的简单图形。 构造这种图形的代码,如下所示。 vx_context context = vxCreateContext(); vx_image images[] = {…

4书推荐《AI芯片开发核心技术详解》、《智能汽车传感器:原理设计应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》

4本书推荐《AI芯片开发核心技术详解》、《智能汽车传感器:原理设计应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《AI芯片开发核心技术详解》已经出版,京东、淘宝天猫、当当等网上,相应陆陆续续可以购买。该…

BOF编写-修改时间戳

模板配置 跟着网上的教程使用evilashz师傅的模板,下载模板解压至vs的模板目录: %UserProfile%\Documents\Visual Studio 2022\Templates\ProjectTemplates​​ 创建新项目选择刚刚新增的类型:Beacon Object File​。 ​​ ‍ 环境适配 生成时报错,我使用的是2022版本的,模…

【分布式系统】 分布式调度 设计,要考虑 哪些问题?

一、分布式调度框架的核心功能二、什么是 任务调度 ?三、什么是分布式 任务调度 ?四、分布式调度框架的主要功能五、分布式调度框架的核心业务场景六、分布式任务调度的核心组件七、分布式任务调度的架构模式八、常见的分布式调度框架包括九、XXL-Job的工作流程十、 Quartz 的…