Vue中使用$t(‘xxx‘)实现中英文切换;

news2024/10/6 18:26:21

(原文链接)

介绍

{{$t('key')}} :是VueI18n插件提供的函数,主要用于根据当前语言环境返回对应的翻译文本,以便在页面上显示多语言内容。
key:作为参数传递给函数$t()的字符串,用于指定需要翻译的文本的标识符或键值;这个标识符通常是一个在翻译文件中定义的键,用于查找对应的翻译文本。

工作原理

1.当调用$t(‘key’)时,VueI18n插件会根据当前语言环境和给定的’key’来查找对应的翻译文本;
2.VueI18n插件会检查当前语言环境下的翻译文件(通常是JSON格式的文件),根据’key’查找对应的翻译文本;
3.如果找到了匹配的翻译文本,则返回该文本;否则,返回默认文本或者’key’本身。

Demo

<template>
  <div class="support">
    <p>{{ $t('support') }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {};
  }
};
</script>

<style scoped>
/* 样式可以根据需求自定义 */
</style>

const i18n = new VueI18n({
  locale: 'zh',
  messages: {
    'zh': {
      hello: '你好',
      support: '技术支持:Vue.js 社区'
    },
    'en': {
      hello: 'hello',
      support: 'Technical Support: Vue.js Community'
    }
  }
});

步骤

案例:中英文切换
1.需要在main.js中引入vue-i18n(版本:"vue-i18n": "^9.2.2"

import i18n from './language'

2.浏览器的语言环境不同,相应设置不同的语言配置文件
在这里插入图片描述
3.创建不同语言标识对应的文件。
index.js:

import { createI18n } from "vue-i18n"; //引入vue-i18n组件
import zh from "./zh";
import en from "./en";
//注册i18n实例并引入语言文件

const i18n = createI18n({
    locale: localStorage.getItem("lang") || "en", // 语言标识(缓存里面没有就用中文)
    fallbackLocale: "zh", //没有英文的时候默认中文语言
    messages: {
        en, zh
    }
});

export default i18n;

en.js:

//创建英文语言包对象
export default {
    menus: {
        Home: 'Home',
        Careers:'Careers',
    },
   
}

zh.js:

// 1、创建中文语言包对象
export default{
    menus: {
        Home: '首页',
        Careers:'职业生涯',
    },
}

Demo.vue:

<div class="item1" @click="aClick">{{ $i18n.t('menus.Home') }}</div>
<div class="item2" @click="jump">{{ $i18n.t('menus.Careers') }}</div>
//点击导航在新窗口显示目标网页
    aClick() {
      if (item.value === "menus.Home"){
        this.$router.push({ name: 'demo1Path' });//首页
      }
    },
	jump() {
        let route = this.$router.resolve({name: 'demo2Path'});
        window.open(route.href, '_blank');//职业生涯
      },

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

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

相关文章

快速入门 Postman Mock Server 的使用

Postman 作为一个功能强大的 API 开发工具&#xff0c;凭借 Mock Servers 功能&#xff0c;使得开发者能够轻松而高效地模拟服务器环境&#xff0c;加快开发与测试进程。 启动 Mock Servers 服务 当你在 Postman 中创建一个新的项目时&#xff0c;系统默认并不会显示 Mock Se…

Python爬虫之selenium,有验证码模拟登录

一. 前言 在学习Selenium之前&#xff0c;通过request.get()或者.post(),很难获取网站所加载的动态数据&#xff0c;通过Selenium强大的自动化功能、多浏览器支持、跨平台支持等优点&#xff0c;让我轻松获取一些之前很难获取的数据&#xff0c;这次的案例也是结合之前的所学知…

Window server 2012搭建FTP

禁止废话&#xff0c;直接上图 &#xff01;&#xff01;&#xff01; 注意&#xff1a;如果点击角色添加保存&#xff1a; Server Manager Error - Server Manager is collecting inventory data. Wizard will be available after data collection finishes 解决方案&#x…

Baidu Comate——让软件研发更高效、更智能

个人名片&#xff1a; &#x1f60a;作者简介&#xff1a;一名大二在校生 &#x1f921; 个人主页&#xff1a;坠入暮云间x &#x1f43c;座右铭&#xff1a;给自己一个梦想&#xff0c;给世界一个惊喜。 &#x1f385;**学习目标: 坚持每一次的学习打卡 文章目录 一、Baidu Co…

JAVA链表相关习题2

1.反转一个单链表。 . - 力扣&#xff08;LeetCode&#xff09; //2在1前面 //1在3前面 //ListNode curhead.next //head.nextnull(翻转后头节点变为最后一个节点) // while(cur ! null) { //记录 当前需要翻转节点的下一个节点 ListNode curNext cu…

9、String类型和基本数据类型转换(Java)

String类型和基本数据类型转换 1、基本数据类型转String类型2、String类型转基本数据类型⭐ 1、基本数据类型转String类型 Java中String类型是字符串类型&#xff0c;是用 “ ” 双引号括起来的内容&#xff0c;所以基本数据类型转String类型直接&#xff0b;“ ”即可。&…

损失一件外套?

2024/05/07&#xff0c;晴 碎碎念一波&#xff01; 早上洗漱完要出门时&#xff0c;发现自己昨天穿的外套不见了&#xff01;&#xff01;&#xff01;外套上身效果很不错&#xff0c;买了1年多穿的频率非常高&#xff0c;现在丢了还真挺可惜。 衣服口袋有一个耳机&#xff0…

stm32单片机遇到的问题(持续更新)

flymcu下载问题一直显示连接&#xff0c;实际是连接不上 参考&#xff0c;软件一键下载电路等 使用flymcu下载程序过程中&#xff0c;检测两个地方**&#xff0c;第一&#xff0c;两个boot引脚在下载和硬件运行不同的连接方式** BOOT1x&#xff0c;BOOT00&#xff1a;最常用的模…

六西格玛备考攻略:无从下手?一文让你豁然开朗

当你决定备考六西格玛时&#xff0c;可能会感到有些无从下手。毕竟&#xff0c;这是一个涉及多个领域和方面的综合性考试&#xff0c;需要掌握的知识点和技能也非常广泛。但是&#xff0c;只要你有一个清晰的学习计划和一些有效的备考方法&#xff0c;就能够顺利地通过考试。以…

hadoop学习---基于Hive的教育平台数据仓库分析案例(三)

衔接第一部分&#xff0c;第一部分请点击&#xff1a;基于Hive的教育平台数据仓库分析案例&#xff08;一) 衔接第二部分&#xff0c;第二部分请点击&#xff1a;基于Hive的教育平台数据仓库分析案例&#xff08;二) 学生出勤模块&#xff08;全量分析&#xff09;&#xff1a…

Offer必备算法36_贪心算法三_七道力扣题详解(由易到难)

目录 ①力扣455. 分发饼干 解析代码 ②力扣553. 最优除法 解析代码 ③力扣45. 跳跃游戏 II 解析代码1_动态规划 解析代码2_贪心 ④力扣55. 跳跃游戏 解析代码 ⑤力扣134. 加油站 解析代码 ⑥力扣738. 单调递增的数字 解析代码 ⑦力扣991. 坏了的计算器 解析代码…

Adnroid 异常开机半屏重启代码分析

K1/K2包括家教机H9/H10&#xff0c;异常重启的时候都会开机动画都会出现半屏现象&#xff1a; 为了造这个现象&#xff0c;用eclipse把system_process stop掉就可以看到现象了&#xff1a; 由于开机动画是由SurfaceFlinger服务启动&#xff0c;出现异常会调用SurfaceFling…

特斯拉CEO马斯克访华,或加速FSD技术在中国的落地

特斯拉首席执行官埃隆马斯克于4月底进行了中国之旅&#xff0c;这一访问被业内人士认为可能加速特斯拉FSD&#xff08;Full Self-Drive&#xff0c;完全自动驾驶&#xff09;技术在中国的应用。业内专家指出&#xff0c;马斯克的此番到访可能会对中国自动驾驶市场产生深远影响&…

视频转GIF动图:一键批量操作技巧,轻松实现动态图像转换

在数字媒体时代&#xff0c;GIF动图因其小巧、循环播放的特性&#xff0c;在网络传播中占据了重要地位。而将视频转换为GIF动图&#xff0c;不仅可以快速捕捉视频中的精彩瞬间&#xff0c;还能为社交媒体、网站和博客等内容创作增添生动与活力。本文将介绍如何通过一键批量操作…

【how2j JQuery部分】课后题答案及相关笔记

练习题 <script src"jquery.min.js"></script><script>$(function(){$(tr:odd).css({"background-color":"#f8f8f8"});}); </script> <style> table{border-collapse:collapse;width:90%;} tr{border-bottom-sty…

【spark】win10 pyspark3.5.1 安装超级简单

下载地址&#xff1a;https://spark.apache.org/downloads.html 下载完成&#xff1a; 复制文件到自己的路径下&#xff0c;路径最好不要有中文、空格&#xff1b; 解压tgz文件&#xff1a; 修改环境变量&#xff1a; 创建SPARK_HOME&#xff1a; D:\software_download\spar…

实测幻方新出的超强AI大模型,中文能力对比GPT4.0不落下风

目前从网上的消息来看&#xff0c;DeepSeek中文综合能力&#xff08;AlignBench&#xff09;开源模型中最强&#xff0c;与GPT-4-Turbo&#xff0c;文心4.0等闭源模型在评测中处于同一梯队。 话不多说&#xff0c;我们开测&#xff01; 1.首先我们来让他直接来一段逻辑推理【并…

CAN报文总线仲裁机制

对于标准帧而言&#xff0c;有11位的标识符&#xff0c;也就是报文的ID。报文的ID值越小&#xff0c;优先级越高。如果有两个以上的ECU同时发送CAN报文&#xff0c;ID值小的报文可以发送成功。总线仲裁机制是一种非破坏性仲裁&#xff0c;是一种既不会造成已发送数据的延迟&…

rust使用serde_json转换Value为rust中的数据类型

为了方便转换未知json数据&#xff0c;我们可以使用serde提供的value类型来进行转换&#xff0c;将json字符串转化为Value值&#xff0c;然后可以快速使用get方法来获取值&#xff1a; let json_str r#"{"name": "John","age": 30,"c…

3D 交互展示该怎么做?

在博维数孪&#xff08;Bowell&#xff09;平台制作3D交互展示的流程相对简单&#xff0c;主要分为以下几个步骤&#xff1a; 1、准备3D模型&#xff1a;首先&#xff0c;你需要有一个3D模型。如果你有3D建模的经验&#xff0c;可以使用3ds Max或Blender等软件自行创建。如果没…