【玩玩Vue】通过vue-store实现枚举管理,用于下拉选项和中英文翻译等
原文作者:我辈李想
版权声明:文章原创,转载时请务必加上原文超链接、作者信息和本声明。
文章目录
- 一、store基础用法
- 1.在src下新建store文件夹,在store下新建module文件夹
- 2.在module下新建enums.js文件
- 3.在store下新建getters.js文件
- 4.在store下新建index.js文件
- 5.修改src下main.js文件
- 6.vue文件调用
- 二、中英文翻译
- 1.在src下建立中英文翻译的文件夹language,继续新建en.js、zh.js、index.js文件
- 2.en.js和zh.js内容
- 3.index.js内容
- 4.修改src下main.js文件
- 5.修改enums.js文件,修改value属性
- 6.vue文件调用
一、store基础用法
1.在src下新建store文件夹,在store下新建module文件夹

2.在module下新建enums.js文件
export default {namespaced: true, // 开启命名空间state: {options: {modeList: [// 成像模式下拉{id: '聚束SP',value: '聚束SP'},{id: '条带SM',value: '条带SM'},{id: 'TP',value: 'TOPS'},{id: '窄扫NS',value: '窄扫NS'},{id: '宽扫ES',value: '宽扫ES'}],orbitList: [// 升降轨限制下拉{id: '均可',value: '均可'},{id: '升轨',value: '升轨'},{id: '降轨',value: '降轨'}],}}
};
3.在store下新建getters.js文件
const getters = {userInfo: (state) => state.user.userInfo, // 用户信息language: (state) => state.user.language, // 用户信息Satellite: (state) => state.user.Satellite, // 用户信息token: (state) => state.user.token, //userId: (state) => state.user.userId,routes: (state) => state.permission.routes,
};
export default getters;
4.在store下新建index.js文件
import Vue from 'vue';
import Vuex from 'vuex';
import getters from './getters';
import permission from './module/permission';
import user from './module/user'; // 用户信息
import enums from './module/enums'; // 枚举统一
Vue.use(Vuex);export default new Vuex.Store({state: {},getters,mutations: {},actions: {},modules: {user,permission,enums}
});
5.修改src下main.js文件
import Vue from 'vue';
import App from './App.vue';
import store from './store';Vue.config.productionTip = falsenew Vue({store,render: (h) => h(App)
}).$mount('#app');
6.vue文件调用
<template><el-selectv-model="param.img_mode"size="mini"style="width: 100%":placeholder="'programOrder.ImagingMode"@change="count"><el-optionv-for="(item, index) in selectoptions.modeList":key="index":label="item.value":value="item.id"/></el-select>
</template>export default {created() {this.selectoptions = this.$store.state.enums.options;},
}

二、中英文翻译
1.在src下建立中英文翻译的文件夹language,继续新建en.js、zh.js、index.js文件

2.en.js和zh.js内容
en.js如下
module.exports = {// 编程订单programOrder: {SpotLight: 'SpotLight - SP',StripMap: 'StripMap - SM',ScanSARNarrow: 'ScanSAR Narrow - NS',ScanSARWide: 'ScanSAR Wide - ES',}
}
zh.js如下
module.exports = {// 编程订单programOrder: {SpotLight: '聚束SP',StripMap: '条带SM',ScanSARNarrow: '窄扫NS',ScanSARWide: '宽扫ES',}
}
3.index.js内容
import elementEn from 'element-ui/lib/locale/lang/en';
import elementCn from 'element-ui/lib/locale/lang/zh-CN';
import Vue from 'vue';
import VueI18n from 'vue-i18n';
import enLocale from './en';
import usLocal from './zh';
Vue.use(VueI18n);
const messages = {zh: {...usLocal,...elementCn},en: {...enLocale,...elementEn}
};
const i18n = new VueI18n({locale: localStorage.getItem('language') || 'zh', // 通过this.$i18n.locale的值实现语言切换messages
});export default i18n;
4.修改src下main.js文件
import Vue from 'vue';
import App from './App.vue';
import store from './store';
import i18n from './language';Vue.config.productionTip = falsenew Vue({store,i18n,render: (h) => h(App)
}).$mount('#app');
5.修改enums.js文件,修改value属性
注意value的值
export default {namespaced: true, // 开启命名空间state: {options: {modeList: [// 成像模式下拉{id: '聚束SP',value: 'programOrder.SpotLight'},{id: '条带SM',value: 'programOrder.StripMap'},{id: 'TP',value: 'TOPS'},{id: '窄扫NS',value: 'programOrder.ScanSARNarrow'},{id: '宽扫ES',value: 'programOrder.ScanSARWide'}],orbitList: [// 升降轨限制下拉{id: '均可',value: '均可'},{id: '升轨',value: '升轨'},{id: '降轨',value: '降轨'}],}}
};
6.vue文件调用
注意label的值
<template><el-selectv-model="param.img_mode"size="mini"style="width: 100%":placeholder="$t('programOrder.ImagingMode')"@change="count"><el-optionv-for="(item, index) in selectoptions.modeList":key="index":label="$t(item.value)":value="item.id"/></el-select>
</template>export default {created() {this.selectoptions = this.$store.state.enums.options;},
}
相关文章:
【玩玩Vue】通过vue-store实现枚举管理,用于下拉选项和中英文翻译等
原文作者:我辈李想 版权声明:文章原创,转载时请务必加上原文超链接、作者信息和本声明。 文章目录 一、store基础用法1.在src下新建store文件夹,在store下新建module文件夹2.在module下新建enums.js文件3.在store下新建getters.js…...
ISCSI:后端卷以LVM 的方式配置 ISCSI 目标启动器
写在前面 准备考试整理相关笔记博文内容涉及使用 LVM 做ISCSI 目标后端块存储 Demo理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的&#…...
八公山豆腐发展现状与销售对策研究
1.引言 八公山豆腐作为中国传统特色食品之一,一直以来备受人们的喜爱。然而,在现代社会中,由于消费者对于营养健康的追求以及市场竞争的加剧,八公山豆腐的市场份额逐渐缩小。因此,为了更好地推广和发展八公山豆腐&…...
排序算法-插入排序
属性 当插入第i(i>1)个元素时,前面的array[0],array[1],…,array[i-1]已经排好序,此时用array[i]的排序码与array[i1],array[i-2],…的排序码顺序进行比较,找到插入位置即将array[i]插入,原来位置上的元素顺序后移 直接插入排序…...
多位数按键操作(闪烁)数码管显示
/*----------------------------------------------- 内容:按键加减数字,多个数码管显示 ------------------------------------------------*/ #include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存…...
MyEclipse项目导入与导出
一、项目导出 1、右键选择项目名称,弹出菜单中选择“export”,如下图所示 2、选择“恶心“export”,弹出菜单如下;在“General“选项中,选择“File System”选项 3、点击“next”,进入保存位置选择界面&am…...
ArrayList和LinkedList
最近在刷回溯算法时,遇见了List<Integer> A new ArrayList<>(); LinkedList<Integer> B new LinkedList<>();这类型的表达方式 很好奇的问题是: 1、List<Integer> A new ArrayList<>();为什么是正确的写法 2…...
Linux 配置 Nginx 服务完整详细版
目录 前言 配置Nginx监听端口和服务器块 # 防DDoS配置 # 日志配置 # 设置服务器块 监听端口 网站根目录 默认文件 静态文件目录 图像文件目录 # 自定义错误页面 # 反向代理配置 # 配置SSL/TLS 1、获取SSL/TLS证书 2、安装证书 3、配置SSL/TLS # 配置SSL协议版本…...
Python实现猎人猎物优化算法(HPO)优化LightGBM回归模型(LGBMRegressor算法)项目实战
说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 猎人猎物优化搜索算法(Hunter–prey optimizer, HPO)是由Naruei& Keynia于2022年提出的一种最新的…...
无涯教程-JavaScript - ODD函数
描述 ODD函数返回四舍五入到最接近的奇数整数的数字。 ODD函数是Excel中的15个舍入函数之一。 语法 ODD (number)争论 Argument描述Required/OptionalNumberThe value to round.Required Notes 无论数字的符号如何,值都将从零舍入到下一个奇数。如果number是一个奇数整数…...
Easyui里的datagrid嵌入select下拉框
问题: 想使用datagird里嵌入select下拉框,并在提交form表单时获取datagrid选中的每行数据里的每个下拉框选中的值。 解决方案: 其中economicIssuesSelect使用下拉框,重点关注 initEconomicIssues(row)方法。这里的方法需要传递ro…...
计算机专业毕业设计项目推荐03-Wiki系统设计与实现(JavaSpring+Vue+Mysql)
Wiki系统设计与实现(JavaSpringVueMysql) **介绍****系统总体开发情况-功能模块****各部分模块实现** 介绍 本系列(后期可能博主会统一为专栏)博文献给即将毕业的计算机专业同学们,因为博主自身本科和硕士也是科班出生,所以也比较了解计算机专业的毕业设…...
微服务的艺术:构建可扩展和弹性的分布式应用
文章目录 什么是微服务架构?微服务的设计原则1. 基于业务边界划分服务2. 松耦合和强内聚3. 自动化测试和部署4. 监控和日志5. 弹性设计 微服务的实施细节1. 服务发现示例代码:使用Consul进行服务发现 2. 负载均衡示例代码:Nginx配置负载均衡 …...
在PHP8中对数组进行排序-PHP8知识详解
在php8中,提供了丰富的排序函数,可以对数组进行排序操作。常见的排序函数如下几个:sort() 函数、rsort() 函数、asort() 函数、arsort() 函数、ksort() 函数、krsort() 函数、natsort()函数和natcascsort()函数。 1、sort() 函数:…...
Redis混合模式持久化原理
前言 前面文章中我们也介绍过Redis的持久化方式有两种:rdb持久化和aof持久化,具体详情可查看之前文章redis持久化。rdb持久化还是aof持久化它们都有各自的缺点。 rdb和aof缺点 rdb持久化:由于是定期对内存数据快照进行持久化,因此…...
《BPF Performance Tools —— 洞悉Linux系统和应用性能》学习笔记 —— 第一章 介绍(2)
接前一篇文章:《BPF Performance Tools —— 洞悉Linux系统和应用性能》学习笔记 —— 第一章 介绍(1) 1.2 Tracing、Snooping、Sampling、Profiling和Observability是什么? 这些都是用于对分析技术和工具进行分类的术语。 Trac…...
【计算机网络】网络编程接口 Socket API 解读(7)
Socket 是网络协议栈暴露给编程人员的 API,相比复杂的计算机网络协议,API 对关键操作和配置数据进行了抽象,简化了程序编程。 本文讲述的 socket 内容源自 Linux man。本文主要对各 API 进行详细介绍,从而更好的理解 socket 编程。…...
crypto++下载、安装(VS2017)及加解密使用
crpto 下载按个人喜好下载,我使用了图中框选的8.8.0 Release.解压 安装打开修改以适应本机配置整理至标准库 调用加解密使用 Crypto(也称为Crypto Library或Crypto STL)是一个C密码学库,它提供了各种密码学算法和安全编程工具&…...
R语言画图
简单记录一下 plot(lad_profile_relative$lad, lad_profile_relative$height, type"l", lwd1.5, xlabexpression(paste("LAD ", "(", m^2, m^-3, ")" )), ylab"Height (m)")X轴数据, Y轴数据 type, 标记类型 lw…...
redis 核心数据结构
一、简述 redis是一个开源的使用C语言编写的一个kv存储系统,是一个速度非常快的非关系远程内存数据库。它支持包括String、List、Set、Zset、hash五种数据结构。 除此之外,通过复制、持久化和客户端分片等特性,用户可以很方便地将redis扩展…...
GPU vs TPU vs FPGA:三大AI芯片实战对比,哪个更适合你的项目?
GPU vs TPU vs FPGA:三大AI芯片实战对比,哪个更适合你的项目? 当你在深夜调试模型时,是否曾被"OOM"错误折磨得抓狂?或是看着电费账单上那个惊人的数字陷入沉思?选择正确的AI加速芯片,…...
SunnyUI中UIAvatar的进阶应用与自定义配置
1. UIAvatar控件基础回顾与核心属性解析 在SunnyUI这个强大的WinForms控件库中,UIAvatar可以说是用户界面设计的"门面担当"。它专门用于展示用户头像、品牌标识或者任何需要圆形/圆角矩形展示的图形元素。虽然基础使用很简单,但很多人可能只停…...
构建自主海上防御系统:Mirai Robotics融资420万美元
Mirai Robotics已筹集420万美元的Pre-Seed轮资金,旨在构建自主和智能的海上系统。本轮融资由Primo Ventures、Techshop和40Jemz Ventures领投,并有来自意大利和国际的天使投资人参与。 海洋是地球上最关键的基础设施之一。全球超过80%的贸易通过海路运输…...
JS逆向新手也能搞定:手把手教你用Node.js补全ali140滑块canvas环境(附完整代码)
JS逆向新手也能搞定:手把手教你用Node.js补全ali140滑块canvas环境(附完整代码) 第一次接触JS逆向时,看到那些复杂的加密逻辑和环境检测代码,确实让人望而生畏。特别是遇到canvas这种需要模拟浏览器环境的场景…...
Unity3D集成百度语音识别与唤醒功能实战指南(Android平台)
1. 为什么选择百度语音SDK? 在Unity3D项目中实现语音交互功能时,百度语音识别与唤醒SDK是我测试过最稳定的解决方案之一。特别是在Android平台上,它的离线唤醒功能响应速度能控制在800毫秒内,识别准确率在安静环境下能达到95%以上…...
Go语言中的并发模式:从WaitGroup到errgroup
Go语言中的并发模式:从WaitGroup到errgroup 作为一个写了十几年代码的Go后端老兵,我深刻体会到并发编程的重要性。Go语言以其简洁的并发模型著称,通过goroutine和channel,我们可以轻松实现高效的并发程序。今天咱们就聊聊Go语言中…...
Notepad--终极指南:5分钟掌握国产跨平台文本编辑器的完整解决方案
Notepad--终极指南:5分钟掌握国产跨平台文本编辑器的完整解决方案 【免费下载链接】notepad-- 一个支持windows/linux/mac的文本编辑器,目标是做中国人自己的编辑器,来自中国。 项目地址: https://gitcode.com/GitHub_Trending/no/notepad-…...
特斯拉行车记录仪视频合并终极指南:高效处理多摄像头记录的专业方案
特斯拉行车记录仪视频合并终极指南:高效处理多摄像头记录的专业方案 【免费下载链接】tesla_dashcam Convert Tesla dash cam movie files into one movie 项目地址: https://gitcode.com/gh_mirrors/te/tesla_dashcam 特斯拉行车记录仪视频智能合并工具tesl…...
深入解析DDR内存训练:从FLY BY布线到信号对齐
1. 为什么DDR内存需要训练? 当你按下电脑开机键的那一刻,主板上的DDR内存就开始了一段奇妙的"热身运动"。这个热身过程专业术语叫做内存训练(Memory Training),它是确保内存稳定运行的关键步骤。想象一下&a…...
BLIP-Diffusion实战解析:如何通过预训练主题表示实现高效可控的图像生成
1. BLIP-Diffusion的核心创新点解析 第一次看到BLIP-Diffusion这个模型时,最让我惊讶的是它解决了一个困扰行业多年的难题:如何在不需要反复微调的情况下,让AI生成的图像既保持输入主题的特征,又能灵活响应文本指令。这就像教一个…...
