Vuex 动态模块状态管理器
模块化思想
我们之前的博文已经讲述了Vuex怎么使用命名空间实现模块化状态管理。详情可以看:
Vuex命名空间及如何获取根模块、兄弟模块状态管理器_AI3D_WebEngineer的博客-CSDN博客
https://blog.csdn.net/weixin_42274805/article/details/133269196?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522169839448016800182196324%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=169839448016800182196324&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-133269196-null-null.nonecase&utm_term=%E5%91%BD%E5%90%8D%E7%A9%BA%E9%97%B4&spm=1018.2226.3001.4450
动态模块场景
动态模块的设计理念是为了方便前端随时挂载和卸载状态管理器模块。
模块书写
import { dailyStatistics, getList } from '@/api/perception/index.js';
export const INSTALL_MODULE_PATH = 'moduleStore/perception';
export default {namespaced: true,state: {dailyStatistics: {},recordsList: {}},mutations: {saveDailyStatistics(state, loadData) {state.dailyStatistics = loadData;},saveRecordsList(state,loadData) {state.recordsList = loadData}},actions: {/*** @name 获取数据*/getDailyStatistics({ commit }) {return dailyStatistics().then(res => {commit('saveDailyStatistics', res.data || {});});},getRecordsList({ commit }, {pageA,stepNum,info}) {...commit('saveRecordsList', {total:res.data.total,list})});}},getters: {mockFireHotData(state){return state.recordsList.list.map(t => {t.eventType = 3return t})}},
};
与正常的模块没什么区别的,只是多导出了一个路径变量。用于指定她在仓库里的位置。
挂载和卸载
import PERCEPTION_MODULE, {INSTALL_MODULE_PATH,} from '@/store/modules/perception';
beforeCreate() {// 注册状态管理器模块this.$store.registerModule(INSTALL_MODULE_PATH, PERCEPTION_MODULE);},
beforeDestroy() {// 卸载管理器模块this.$store.unregisterModule(INSTALL_MODULE_PATH);
},
此时挂载上去的仓库位于this.$store.moduleStore/perception里
使用
// 调用actions
await this.$store.dispatch(`${INSTALL_MODULE_PATH}/getRecordsList`, {...});
// 调用仓库
this.$store.state[INSTALL_MODULE_PATH].xxxx
// 调用mutations
this.$store.commit(`${INSTALL_MODULE_PATH}/saveDailyStatistics`, {...});
// 调用getter
this.$store.getters[`${INSTALL_MODULE_PATH}/mockFireHotData`]
相关文章:
Vuex 动态模块状态管理器
模块化思想 我们之前的博文已经讲述了Vuex怎么使用命名空间实现模块化状态管理。详情可以看: Vuex命名空间及如何获取根模块、兄弟模块状态管理器_AI3D_WebEngineer的博客-CSDN博客https://blog.csdn.net/weixin_42274805/article/details/133269196?ops_request_…...
实现分片上传、断点续传、秒传 (JS+NodeJS)(TypeScript)
一、引入及效果 上传文件是一个很常见的操作,但是当文件很大时,上传花费的时间会非常长,上传的操作就会具有不确定性,如果不小心连接断开,那么文件就需要重新上传,导致浪费时间和网络资源。 所以࿰…...
浅谈安科瑞EMS能源管控平台建设的意义-安科瑞 蒋静
摘 要:能源消耗量大、能源运输供给不足、环境压力日趋增加、能耗双控等一系列问题一直困扰着钢铁冶金行业,制约着企业快速稳定健康发展。本文介绍的安科瑞EMS能源管控平台,采用自动化、信息化技术,实现从能源数据采集、过程监控、…...
【原创】指针变量作为函数参数要点注意+main函数中值是否改变
指针变量作为函数参数要点注意(已写至笔记) 1传参指针不加*(main中函数) 2收参指针要加*(被main调用的函数) 3传参指针名可与收参指针名不同,不影响 4【问】如何看主函数中指针所指内容是否改变…...
售后处置跟踪系统设想
售后处置跟踪系统设想 前言 随着汽车工业的发展,软件定义车的模式已成为主流汽车设计及智能化功能架构模式,通过引入SOA的软件架构设计,使得现有的座舱软件、云端服务软件、App软件等众多功能模块的版本迭代频次日新月异,发版更…...
python实现ModBusTCP协议的server
python实现ModBusTCP协议的server是一件简单的事情,只要通过pymodbus、pyModbusTCP等模块都可以实现,本文采用pymodbus。 相关文章见: python实现ModBusTCP协议的client-CSDN博客 一、了解pymodbus的Server 1、pymodbus.server的模块 pym…...
AndroidStudio编译错误‘android.injected.build.density‘ is deprecated
问题 AndroidStudio编译错误 The option ‘android.injected.build.density’ is deprecated. It was removed in version 8.0 of the Android Gradle plugin. Density property injection from Android Studio has been removed. 解决 app/build.gradle 中这行 apply plugi…...
计网小题题库整理第一轮(面向期末基础)(3)
基础选择题的最后一章更新,看完期末75至少没问题~ 前情提要: 计网小题题库整理第一轮(12期) 一.选择题 1、 目前,最流行的以太网组网的拓扑结构是( C )。 A) 总线结构 B) 环…...
进程控制(一):进程终止
文章目录 进程控制(一)进程终止运行正常退出码 运行异常进程正常/异常总结 进程控制(一) 在前文中,我们初步了解了进程的概念,以及通过fork函数来创建子进程,并对于为什么运行一个程序…...
特殊类设计[下] --- 单例模式
文章目录 5.只能创建一个对象的类5.1设计模式[2.5 万字详解:23 种设计模式](https://zhuanlan.zhihu.com/p/433152245)5.2单例模式1.饿汉模式1.懒汉模式 6.饿汉模式7.懒汉模式7.1饿汉模式优缺点:7.2懒汉模式1.线程安全问题2.单例对象的析构问题 8.整体代码9.C11后可…...
计算机网络-应用层(1)
一、DNS 域名系统 (DNS) 是把主机域名解析为IP地址的系统。该系统是由解析器和域名服务器组成的。采用UDP 协议,较少情况下使用TCP 协议,端口号均为53。 域名系统由三部分构成: DNS 名字空间、域名服务器、 DNS客户机。 (1)根域:…...
Kotlin基础——枚举、When、in、for
枚举 声明只有值的枚举 enum class Color {RED, GREEN, BLUE }此外还可以增加属性和方法,如果需要在枚举类中定义方法,要使用分号把枚举常量列表和方法定义分开,这也是Kotlin唯一必须使用分号的地方 enum class Color(val r: Int, val g: …...
C++编程题目------平面上的最接近点对(分治算法)
题目描述 给定平面上n个点,找出其中的一对点的距离,使得在这n个点的所有点对中,该距离为所有点对中最小的。 输入格式 第一行一个整数 n,表示点的个数。 接下来 n 行,每行两个实数 x,y ,表示一个点的行…...
Linux下的文件操作和文件管理
文章目录 应用编程文件操作文件描述符open函数write函数read函数close函数lseek函数文件操作例子 文件管理文件基本知识文件类型文件共享空洞文件错误处理退出程序原子操作fcntl和ioctl截断文件stat函数软链接和硬链接 应用编程 系统调用(system call)是Linux内核提供给应用层…...
设计模式之桥梁模式
什么是桥梁模式 桥梁模式(Bridge Pattern)也称为桥接模式,属于结构型模式,它主要目的是通过组合的方式建立两个类之间的联系,而不是继承。桥梁模式将抽象部分与它的具体实现部分分离,使它们都可以独立地变…...
“从部署到优化,打造高效会议管理系统“
目录 引言一、部署单机项目 - 会议OA1.1 硬件和软件环境准备1.2 检查项目1.3 系统部署1.后端部署 二、部署前后端分离项目 - SPA项目后端部署2.前端部署 总结 引言 在现代化办公环境中,会议是组织沟通、决策和合作的重要方式之一。为了提高会议的效率和质量&#x…...
Facebook广告效果数据获取
一、背景 公司每年在Facebook和Google上投放了大量的广告,我总不能让老板登录Facebook广告投放平台上去看广告效果,其实老板只关注每天花了多少钱引来了多少客户,每个客户平均花费多少钱,其它的他才不关心,有Facebook…...
nlp之文本转向量
文章目录 代码代码解读 代码 from tensorflow.keras.preprocessing.text import Tokenizer # 标记器(每一个词,以我们的数值做映射,)words [LaoWang has a Wechat account., He is not a nice person., Be careful.] # 把这句话中每一个单词…...
【luckfox】添加压力传感器hx711
文章目录 前言一、参考资料二、电路图三、驱动四、makefile——添加驱动五、dts——使能gpio5.1 参考5.2 改动1—— hx117节点5.3 改动2——引脚节点5.4 已经被定义的引脚5.5 gpio源码 六、改动总结——使能hx711七、验证驱动添加八、编写测试文件8.1 测试代码8.2 配置编译环境…...
C++11的lambda表达式
lambda来源于函数式编程的概念。C11这次终于把lambda加进来了。 lambda表达式有如下优点: 1、声明式编程风格:就地匿名定义目标函数或函数对象,不需要额外写一个命名函数或者函数对象。以更直接的方式去写程序,好的可读性和可维护…...
Ollama调用translategemma-27b-it部署指南:Kubernetes集群水平扩展实践
Ollama调用translategemma-27b-it部署指南:Kubernetes集群水平扩展实践 1. 项目简介与核心价值 translategemma-27b-it是Google基于Gemma 3模型系列构建的先进翻译模型,专门处理55种语言之间的翻译任务。这个模型最大的特点是既能处理文本翻译…...
UI-TARS-desktop场景拓展:在客服、运维、办公中的实际应用
UI-TARS-desktop场景拓展:在客服、运维、办公中的实际应用 你是否遇到过这样的场景:客服团队每天重复回答相同问题,运维人员需要手动执行大量重复性操作,办公人员花费大量时间处理文档和数据?UI-TARS-desktop作为一款…...
Pixel Language Portal惊艳效果集:梵文古籍→现代汉语的逐层语义解构与重构展示
Pixel Language Portal惊艳效果集:梵文古籍→现代汉语的逐层语义解构与重构展示 1. 像素语言传送门核心能力 Pixel Language Portal(像素语言跨维传送门)是基于Tencent Hunyuan-MT-7B引擎构建的创新翻译工具。与传统翻译软件不同࿰…...
未来之窗昭和仙君(八十八)东方仙盟神识FACLAW说明书—东方仙盟
东方仙盟类md5算法功能说明书未来之窗昭和仙君 - cyberwin_fairyalliance_webquery一、功能概述东方仙盟类md5算法主要用于对输入的文本进行压缩处理,生成一个32位的十六进制字符串。该算法通过加权计算、哈希强化、位置扰动等步骤,确保即使对于超长文本…...
OpenClaw模型微调:Kimi-VL-A3B-Thinking领域适配数据准备指南
OpenClaw模型微调:Kimi-VL-A3B-Thinking领域适配数据准备指南 1. 为什么需要领域特定数据微调 当我第一次尝试将Kimi-VL-A3B-Thinking模型应用到医疗影像分析场景时,发现模型对专业术语的理解和图像特征的把握都不够精准。这让我意识到,即使…...
VS2019+CMake实战:Super4PCS点云配准从源码编译到运行全流程指南
VS2019CMake实战:Super4PCS点云配准从源码编译到运行全流程指南 在三维视觉和机器人领域,点云配准一直是核心难题之一。Super4PCS算法作为4PCS的改进版本,以其在低重叠率点云上的优异表现,成为工业检测和SLAM系统中的热门选择。本…...
ADS7830 8位I²C模数转换器原理与Arduino/STM32跨平台驱动
1. 项目概述ADS7830 是德州仪器(Texas Instruments)推出的一款低功耗、8位精度、8通道逐次逼近型(SAR)模数转换器,专为嵌入式系统中对成本敏感、空间受限且需多路模拟信号采集的场景而设计。7Semi 公司基于该芯片开发的…...
第1节:如何统一多源文档格式?
RAG与Agent性能调优:1.如何统一多元文档格式? Gitee地址:https://gitee.com/agiforgagaplus/OptiRAGAgent 文章详情目录:RAG与Agent性能调优 下一节:待更新 导论 从路口着手解决问题 在RAG技术中,文档…...
2026届学术党必备的降AI率平台横评
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 降低那个AIGC率的关键要点在于削弱机器生成所呈现出的模式化特性。其一,对句式结…...
蓝桥杯19725最优分组
import java.util.Scanner; // 1:无需package // 2: 类名必须Main, 不可修改public class Main {public static void main(String[] args) {Scanner scanner new Scanner(System.in);int n scanner.nextInt();double p scanner.nextDouble();double minCost Double.MAX_VAL…...
