vue2-使用vue-i18n搭建多语言切换环境

安装

注意:vue2.0要用8版本的,使用9版本的会报错

npm install vue-i18n@8.27.0 --save

创建相关的语言包文件

在src目录下,新建i18n文件夹

在新文件夹i18n中新建langs文件夹,里边放语言文本文件.js
      zh.js:存放所有的中文显示内容
      en.js:存放所有的英文显示内容
 与langs文件夹同级,创建index.js:用于配置i18n,并导出i18n

 

zh.js
export default {//中文变量名:"中文"
}

en.js
export default {//英文变量名:"英文"
}

index.js
import Vue from "vue"
import VueI18n from "vue-i18n"
//引入自定义语言配置  
import zh from './langs/zh'
import en from './langs/en'
import fan from './langs/fan'Vue.use(VueI18n); // 全局注册国际化包// 准备翻译的语言环境信息
const i18n = new VueI18n({locale: sessionStorage.getItem('lang') || "简", //将语言标识存入localStorage或sessionStorage中,首次默认中文显示,非首次则以localStorage为准messages: {// 繁体语言包'繁': {...fan},// 中文语言包'简': {...zh},//英文语言包'ENG': {...en}},silentTranslationWarn: true, //解决vue-i18n黄色警告"value of key 'xxx' is not a string"和"cannot translate the value of keypath 'xxx'.use the value of keypath as default",可忽略globalInjection: true, // 全局注入fallbackLocale: '简', // 指定的locale没有找到对应的资源或当前语种不存在时,默认设置当前语种为中文
});export default i18n

在main里导入语言包文件

main.js
import i18n from './i18n'Vue.use({i18n: (key, value) => i18n.t(key, value) // 在注册Element时设置i18n的处理方法,可以实现当点击切换按钮后,elementUI可以自动调用.js语言文件实现多语言切换}
)new Vue({render: h => h(App),i18n
}).$mount('#app')

切换语言

this.$i18n.locale = "ENG";//切换为英文

基本使用

1.在模板字符串中使用
{{ $t("变量名") }}
<button>{{ $t("submit") }}</button>

2.绑定属性使用
:属性名="$t('变量名')"
<input type="text" :placeholder="$t('FromSub.content.placeholder1')"/>
3.在script中使用
this.$t('变量名')

注意:用这种方法在data(){}中获取的变量存在更新this.$i18n.locale的值时无法自动切换的问题,需要刷新页面才能切换语言。

解决方案:

1)调整写法

2)写在计算属性computed:{…}中,不要写在data(){return{…}}中

4.变量名不固定
{{ $t(`msg.${msgss}`) }}//msgss是一个变量

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

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

相关文章

vmware 使用scsi_id 获取ID返回空

/usr/lib/udev/scsi_id -g -u -d --whitelisted --replace-whitespace --device/dev/sdb2 结果返回是空的&#xff0c;根本的原因是 虚拟机的设置问题。 修改虚拟机的配置文件&#xff0c;vmx后缀的那个&#xff1a;例如 CentOS 7 64 位.vmx disk.EnableUUID "TRUE&quo…

ADC学习总结

ADC的架构分类&#xff1a; 1、Delta-Sigma 采样率一般是在1M以内&#xff0c;位数一般可以做的很高&#xff0c;比如24位&#xff0c;Delta-Sigma ADC采用了过采样技术&#xff0c;不需要在模拟输入端加抗混叠滤波&#xff0c;由后端数字滤波器进行处理&#xff0c;通过信噪…

Yearning安装及使用

Yearning是基于go和vue开发的一款SQL审核工具。在实际开发中&#xff0c;生产环境DDL、DML脚本一般需要走工单流程进行审批后执行&#xff0c;Yearning可以制定MySQL的SQL审核流程、规范及审批等功能。 一、主要功能 1.支持自定义SQL审核流程2.自动化SQL语句审核,可对SQL进行…

springboot(ssm北工国际健身俱乐部 健身管理系统Java系统

springboot(ssm北工国际健身俱乐部 健身管理系统Java系统 开发语言&#xff1a;Java 框架&#xff1a;ssm/springboot vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff1a;mysql 5.7&#xff08;或8.0&#xff09; …

什么是高阶组件

高阶组件&#xff08;HOC&#xff09;是一个将组件作为参数并返回一个新组件的函数。他是一种由 React 自身组合性质产生的模式。由于高阶组件接受他的组件参数来动态创建子组件&#xff0c;且不会修改或复制其组件中的任何行为&#xff0c;因此他与纯组件较为类似。 高阶组件可…

初学者如何入门 Generative AI 之 Stable Diffusion 与 CLIP :看两篇综述,玩几个应用感受一下先!超多高清大图,沉浸式体验

文章大纲 4种 图片生成 的算法扩散模型的起源Stable DiffusionUNetCLIP参考文献与学习路径A synthography of an astronaut riding a horse created in NightCafe Studio with Stable Diffusion XL (SDXL). Prompt is a photograph of an astronaut riding a horse with weight…

MySQL之DML语句

DML语句 数据操作语言DML&#xff08;Data Manipulation Langua&#xff09; 是SQL语言的一个分类&#xff0c;用于对表的数据进行增&#xff0c;删&#xff0c;改&#xff0c;查 创建表 CREATE TABLE 语句用于创建数据库中的表。 语法&#xff1a; CREATE TABLE 表名称 (列…

DDD领域驱动架构设计学习网站和开源框架

文章目录 介绍1、国外Axon2、阿里Cola 介绍 近年来&#xff0c;关于DDD的讨论越来越多&#xff0c;关于网上的文章很多都是理论上的介绍&#xff0c;由于自己最近也在学习相关知识&#xff0c;所以分享几个关于DDD落地的开源框架。 1、国外Axon Axon是国外一款比较系统的DDD…

matlab信号分选系统算法-完整算法结构

matlab信号分选系统算法 针对得到的脉冲流PDW进行信号分选&#xff0c;包括重频恒定、重频抖动、重频参差和重频滑变四种脉间调制类型。   这里我们先进行数据的仿真&#xff0c;后续边仿真边分享思路&#xff1a;首先根据信号类型&#xff0c;分别产生重频恒定、重频抖动、重…

el-tree-select 如何使用不规则的数据作为数据来源

el-tree-select 如何使用不规则的数据作为数据来源 在项目中可能使用的 tree 数据并不是那么标准&#xff0c;这样不要紧&#xff0c;只要我们通过 props 指定一下数据结构即可。 比如&#xff0c;项目中的数据结构是这样的&#xff1a; 我们只需要使用 pros 字段指定 tree …

GateWay网关介绍以及整合knife4j聚合所有服务的接口文档

为什么使用网关&#xff1f; 因为多个微服务的端口不同&#xff0c;前端调用不方便&#xff0c;使用网关可以统一接收处理前端的请求&#xff0c;同时方便接口的集中处理&#xff0c;比如鉴权、聚合接口文档、限流等等.. 这里使用Knife4j文档工具来实现接口文档&#xff1a;K…

高校刮起元宇宙风!3DCAT实时云渲染助力川轻化元校园建设

元宇宙&#xff0c;是一个虚拟的网络世界&#xff0c;它与现实世界相互连接&#xff0c;为人们提供了一个身临其境的数字体验。元宇宙的概念并不新鲜&#xff0c;早在上个世纪就有科幻作家和电影导演对它进行了想象和创造。但是&#xff0c;随着科技的发展&#xff0c;特别是5G…

遇到生产环境.OutOfMemoryError: Metaspace

错误日志Aborting due to java.lang.OutOfMemoryError: Metaspace 2023-12-13 17:31:35.750 [http-nio-8080-exec-26] ERROR [DefaultReportIndustryPolicy.generateReport:2538] - 生成报告出现问题 - timeout executing POST http://srv-cer-file/sys-file/upload - {} feig…

【JMeter】使用nmon进行性能资源监控

一、前言 ​ 在工作中可能会遇到需要在压测的时候对Linux服务器进行性能资源监控的情况。这时可以用nmon来对服务器进行监控。 二、nmon的下载安装 1.查看系统信息 shell cat /etc/os-release结果为 shell PRETTY_NAME"Debian GNU/Linux 12 (bookworm)" NAME&qu…

python:五种算法(PSO、RFO、HHO、WOA、GWO)求解23个测试函数(python代码)

一、五种算法简介 1、粒子群优化算法PSO 2、红狐优化算法RFO 3、哈里斯鹰优化算法HHO 4、鲸鱼优化算法WOA 5、灰狼优化算法GWO 二、5种算法求解23个函数 &#xff08;1&#xff09;23个函数简介 参考文献&#xff1a; [1] Yao X, Liu Y, Lin G M. Evolutionary program…

【Linux】如何在Ubuntu 20.04上安装PostgreSQL

介绍 PostgreSQL或Postgres是一个关系数据库管理系统&#xff0c;提供SQL查询语言的实现。它符合标准&#xff0c;具有许多高级功能&#xff0c;如可靠的事务和无读锁的并发性。 本指南演示了如何在Ubuntu 20.04服务器上快速启动和运行Postgres&#xff0c;从安装PostgreSQL到…

Vue2脚手架搭建+项目基础依赖安装

文章目录 1. 安装 node.js2. 安装 vue-cli 脚手架3. 创建 vue2 项目4. 安装基础依赖 1. 安装 node.js 可以参考这篇文章 https://blog.csdn.net/weixin_43721000/article/details/134284418 2. 安装 vue-cli 脚手架 安装 vue-clinpm install -g vue/cli查看是否安装成功vue -…

程序员必备的十种排序算法

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和技术。关…

猫粮哪个牌子质量好性价比高?口碑比较好的主食冻干猫粮牌子推荐

猫咪生骨肉主食冻干猫粮喂养方式是越来越火了&#xff0c;作为一个离职的十年经验宠物护理师&#xff0c;对宠物健康营养方面的知识一直在研究&#xff0c;不光是为了我自己养的猫咪身体健康&#xff0c;也要为客户的猫咪健康负责&#xff01;现在很多养猫人士对主食冻干猫粮喂…

GIT的后悔药

版本回退 上篇咱们说过&#xff0c;GIT能够管理文件的历史版本&#xff0c;这也是版本控制器重要的能力。如果有一天你发现之前做的工作出现很大问题&#xff0c;需要在某个特定的历史版本重新开始&#xff0c;这个时候&#xff0c;就需要版本回退的功能了。执行git reset命令…