国际化 Vue-i18n的安装与使用 (Vue2.0 / Vue3.0)
国际化 Vue-i18n的安装与使用 (Vue2.0 / Vue3.0)
一、Vue-i18n是什么?
Vue-I18n是 Vue.js 的国际化插件。它可以轻松地将一些本地化功能集成到你的 Vue.js 应用程序中。简单来说就是可以帮助用户进行语言的切换”
二、使用步骤
1.引入库
代码如下(示例):
//npm
npm install vue-i18n --save-dev//yarn
yarn add vue-i18n
2.在locales文件夹创建 en.json / zh.json
//en.json
{"up":"up","chooseVariants":"Choose Variants","Specifications":"Product Specifications"
}//zh.json
{"up":"起","chooseVariants":"请选择产品规格","Specifications":"产品规格",
}
3.在locales文件夹创建 index.js
import {createI18n} from 'vue-i18n';import en from './en.json'
import zh from './zh.json'//const locale = 'zh'
let locale = 'zh'
const messages = {'en': en,'zh': zh
}
if(localStorage.getItem('lang')){locale = localStorage.getItem('lang')
}const i18n = createI18n({locale: locale,messages
})export default i18n;
4.创建 store.js
import i18n from '../locales'export default createStore({state: {locales: [{code: 'en',name: 'English'},{code: 'zh',name: '中文'},],locale: '',},mutations: {SETLANG(state,lang){state.locale= langlocalStorage.setItem('lang', lang);i18n.global.locale = lang}},actions: {},modules: {},getters: {}
})
5.使用方法
{{ $t(“chooseVariants”) }}
6.语言切换示例
<template><div class="language" @click.stop><div class="language-div hor-center slgap" @click="langed = !langed"><img class="world" src="@/assets/common/world.svg" alt="" /><div class="body1" :class="{ 'body-langed': langed }">{{ $t("languages") }}</div><imgsrc="@/assets/common/chevronDown.svg"class="language-img":class="{ 'img-rotate': langed }"/></div><div class="language-box col" :class="{ 'language-hidden': !langed }"><divclass="language-label flex"v-for="(lang, i) in locales":key="i"@click="switchLang(lang.code)">{{ lang.name }}</div></div></div>
</template>//Vue2.0
<script>
export default {head() {return {htmlAttrs: {lang: this.$store.state.locale,},};},name: "SwitchLang",data() {return {langed: false,};},methods: {switchLanguage(localeCode) {document.cookie = `locale=${localeCode}`;location.reload();},},computed: {locales() {return this.$store.state.locales;},locale() {return this.$store.state.locale;},},created() {// PubSubs.PubSub.subscribe("closeComps", () => {// this.langed = false;// });},
};
</script>//Vue3.0
<script setup>
import { useStore } from "vuex";
const store = useStore();
function switchLang(lang) {location.reload();store.commit("SETLANG", lang);
}
</script>
<style scoped>
</style>
相关文章:
国际化 Vue-i18n的安装与使用 (Vue2.0 / Vue3.0)
国际化 Vue-i18n的安装与使用 (Vue2.0 / Vue3.0) 一、Vue-i18n是什么? Vue-I18n是 Vue.js 的国际化插件。它可以轻松地将一些本地化功能集成到你的 Vue.js 应用程序中。简单来说就是可以帮助用户进行语言的切换” 二、使用步骤 1.引入库 代码…...
Linux 学习笔记(8)
八、 启动引导 1 、 Linux 的启动流程 1) BIOS 自检 2) 启动 GRUB/LILO 3) 运行 Linux kernel 并检测硬件 4) 挂载根文件系统 5) 运行 Linux 系统的第一个进程 init( 其 PID 永远为 1 ,是所有其它进程的父进程 ) 6) init 读取系统引导配置文件…...
【python】1.python3.12.2和pycharm社区版的安装指南
欢迎来CILMY23的博客喔,本篇为【python】1.python3.12.2和pycharm社区版的安装指南,感谢观看,支持的可以给个一键三连,点赞关注收藏。 目录 一、python3.12.2的下载与安装 1.1下载 1.2安装 二、pycharm的安装 2.1下载安装 2…...
Ubuntu将c++编译成.so文件并测试
一、准备cpp和h文件 创建test.cpp 在cpp中定义相加的函数funcAdd,给出函数的细节代码 #include <iostream> using namespace std;int funcAdd(int x, int y) {return xy; }创建test.h 在h中声明定义的函数,不需要任何细节 #ifndef __TEST__ #…...
数据分析-Pandas数据的探查面积图
数据分析-Pandas数据的探查面积图 数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律? 数据表&…...
美团分布式 ID 框架 Leaf 介绍和使用
一、Leaf 在当今日益数字化的世界里,软件系统的开发已经成为了几乎所有行业的核心。然而,随着应用程序的规模不断扩大,以及对性能和可扩展性的需求不断增加,传统的软件架构和设计模式也在不断地面临挑战。其中一个主要挑战就是如…...
Ubuntu20.04: UE4.27 中 Source Code 的编辑器下拉框没有 Rider选项
问题描述 最近想用 Rider 作为 UE4 开发的 IDE,但安装好 Rider 后,发现编辑器下拉框中没有 Rider 的选项,我检查了 UE4 的插件,发现 Rider Integration 插件已经安装且启用的。 环境:Ubuntu 20.04 UE4.27 Rider2023…...
【论文阅读-PRIVGUARD】Day4:3节
3 PRIVANALYZER:强制执行隐私政策的静态分析 本节介绍PRIVANALYZER,这是一个用于强制执行由PRIVGUARD追踪的隐私政策的静态分析器**。我们首先回顾LEGALEASE政策语言,我们使用它来正式编码政策,然后描述如何静态地强制执行它们**…...
新一代电话机器人开源PHP源代码
使用easyswoole 框架开发的 新一代电话机器人开源PHP源码 项目地址:https://gitee.com/ddrjcode/robotphp 代理商页面演示地址 http://119.23.229.15:8080 用户名:c0508 密码:123456 包含 AI外呼管理,话术管理,CR…...
dockerdocker-copose_限制容器cpu和内存
本文目录 docker的限制方式限制CPU占用限制内存占用 docker-compose docker的限制方式 限制CPU占用 Docker使用--cpus参数来限制容器的CPU资源。该参数指定了分配给容器的CPU核心数量或百分比。 例子:限制CPU使用个数 docker run --cpus2 <imageName>以上…...
【leetcode】圆圈中最后剩下的数字
目录 1. 问题 2. 思路 3. 代码 4. 运行 1. 问题 本题即为典型的约瑟夫问题,通过递推公式倒推出问题的解。原始问题是从n个人中每隔m个数踢出一个人,原始问题变成从n-1个人中每隔m个数踢出一个人…… 示例 1: 输入: n 5, m 3 输出: 3…...
利用python批量将.shp文件转换坐标生成.geojson文件,再将.geojson转换成.csv文件,最后将csv文件插入数据库表
第一步:.shp批量转.geojson # author: JMY # 创建时间: 2024/2/26 17:12 # 批量将.shp文件生成geojson文件并转换坐标为3857import os import geopandas as gpd# 定义输入和输出文件夹路径 input_folder shp文件 output_folder geojson文件# 定义输入和输出坐标系…...
远程服务器Ubuntu 18.04安装VNC远程桌面
一、安装vnc 1.安装图形化界面工具 # 安装过程中会弹窗让选择配置,选lightdm sudo apt install ubuntu-desktop sudo apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal 2.安装vnc sudo apt-get install x11vnc3.安装LightD…...
30天自制操作系统(第23天)
23.1 编写malloc 参考第22天的内容,在绘制窗口前先分配了150*50个字节大小的内存,所以导致该文件经编译后有7.6k左右,能否在其中使用指针呢?当需要开辟空间时,移动指针即可。在之前的章节中也有函数memman_alloc函数可…...
基于Rust语言,和WebAssembly技术,与JavaScript结合,的具体应用场景
基于Rust语言与WebAssembly(Wasm)技术并与JavaScript结合,可以应用于多个场景,特别是在需要高性能和/或低级系统访问的情况下。下面是一些具体的应用场景: 性能密集型任务: Rust加上Wasm适合执行计算密集型任务&#x…...
【MATLAB源码-第154期】基于matlab的OFDM系统多径信道下块状和梳妆两种导频插入方式误码率对比仿真。
操作环境: MATLAB 2022a 1、算法描述 OFDM(Orthogonal Frequency Division Multiplexing,正交频分复用)是一种高效的无线信号传输技术,广泛应用于现代通信系统,如Wi-Fi、LTE和5G。OFDM通过将宽带信道划分…...
Linux 下 socket 编程介绍及 TCP 客户端与服务端创建示例
目录 socket 编程接口TCP 服务端TCP 客户端更多内容 本文介绍了 Linux 下的 socket 编程,及总结了使用 socket 接口实现 TCP 服务端和客户端的示例代码。 socket 编程接口 socket() 函数:用于创建一个新的 socket 描述符: int socket(int …...
JetBrains Gateway Github Copilot 客户端插件和主机插件
JetBrains Gateway可以通过插件支持Github Copilot(需另行注册)。 需要安装插件 客户端,而非插件 主机,如图所示: 大概是因为代码显示在客户端(运行在本地的IDE)?...
【web APIs】3、(学习笔记)有案例!
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、概念其他事件页面加载事件元素滚动事件页面尺寸事件 元素尺寸与位置 二、案例举例电梯导航 前言 掌握阻止事件冒泡的方法理解事件委托的实现原理 一、概念…...
使用css reset 还是使用Normalize.css
文章目录 使用css reset 还是使用Normalize.cssCSS Reset:Normalize.css:总结Normalize.css 的使用(例如Vue 3.0 和 Vue CLI 4.x 项目)1.安装2.main.js 中导入3.测试引用是否成功。 使用css reset 还是使用Normalize.css 使用 CSS Reset 还是 Normalize…...
RabbitMQ消费者处理失败
1. 原生 RabbitMQ 机制:依赖 Ack 和“丢回去”(Requeue) RabbitMQ 服务端本身没有内置“最多重试 N 次然后丢弃”这种复杂的本地计数机制。它主要依赖**消息确认机制(ACK)**来保证消息不丢失。 当消费者处理失败时&…...
深入LPDDR5 Rx Offset校准:为什么你的DRAM上电后时序总是不对?
深入解析LPDDR5 Rx Offset校准:解决DRAM上电时序漂移的实战指南 当你在凌晨三点的实验室里,面对第七次冷启动失败的系统,示波器上那些不稳定的DQ信号波形是否让你感到绝望?这可能是LPDDR5的Rx Offset校准出了问题。让我们从一次真…...
EDEM仿真“隐形”几何与“罢工”颗粒工厂:常见故障排查与实战修复指南
1. 当EDEM几何模型突然"隐身":从现象到修复的完整指南 第一次遇到EDEM里的几何模型突然消失时,我差点以为是自己眼花了。明明上次模拟还好好的模型,这次打开却只剩下空荡荡的粒子在飘荡。这种情况在工程仿真中其实很常见࿰…...
AI 时代:祛魅、适应与重新定义德
指令替换 项目需求:将加法指令替换为减法 项目目录如下 /MyProject ├── CMakeLists.txt # CMake 配置文件 ├── build/ #构建目录 │ └── test.c #测试编译代码 └── mypass2.cpp # pass 项目代码 一,测试代码示例 test.c // test.c #includ…...
游戏开发者看过来:用Aseprite 1.3.12高效制作精灵表与动画的实战指南
游戏开发者看过来:用Aseprite 1.3.12高效制作精灵表与动画的实战指南 在独立游戏开发中,像素艺术不仅是怀旧情怀的载体,更是现代游戏设计的重要视觉语言。作为一款专为像素艺术设计的工具,Aseprite 1.3.12凭借其轻量级和专业性&am…...
[图文超超超详细教程] ~Cursor~ 保姆级下载安装以及API配置接入使用教程!!!
Cursor 是一款以 AI 为核心的智能代码编辑器,可以把它理解为“更懂项目上下文的 VS Code”。提供智能代码补全、代码生成、代码修改、代码搜索和代码解释等。与其他工具不同,Cursor 将AI 辅助编码直接融入到 编辑器的核心功能中,你可以用自然…...
二分查找力扣题(leetcode)鼗
一、语言特性:Java 26 与模式匹配进化 1.1 Java 26 语言级别支持 IDEA 2026.1 EAP 最引人注目的变化之一,就是新增 Java 26 语言级别支持。这意味着开发者可以提前体验和测试即将在 JDK 26 中正式发布的语言特性。 其中最重要的变化是对 JEP 530 的全面支…...
文墨共鸣GPU算力优化:StructBERT模型显存占用降低40%的部署技巧
文墨共鸣GPU算力优化:StructBERT模型显存占用降低40%的部署技巧 1. 项目背景与挑战 文墨共鸣是一个将深度学习算法与传统水墨美学相结合的语义相似度分析系统,基于阿里达摩院的StructBERT大模型。在实际部署中,我们发现原始模型存在明显的显…...
Windows内核驱动手动映射终极指南:KDMapper完全攻略
Windows内核驱动手动映射终极指南:KDMapper完全攻略 【免费下载链接】kdmapper KDMapper is a simple tool that exploits iqvw64e.sys Intel driver to manually map non-signed drivers in memory 项目地址: https://gitcode.com/gh_mirrors/kd/kdmapper 还…...
LangChain揭秘:AI“大脑”+“手脚”+“记忆”,OpenClaw如何轻松打造智能助手?
LangChain是一个Python开发框架,用于定义AI流程、集成RAG(知识库)和Skills(工具箱),控制逻辑。RAG提供信息,Skills执行任务。OpenClaw是集成RAG和Skills的完整AI助手框架,具备记忆和…...
