当前位置: 首页 > news >正文

vue3 vue-i18n 多语言

1. 安装 

npm install vue-i18n -s

2. 引入main.js

import { createI18n } from 'vue-i18n'
import messages from './i18n/index'
const i18n = createI18n({legacy: false,locale: Cookies.get('language') || 'en_us', // set localefallbackLocale: 'en_us', // set fallback localemessages: messages
})
app.use(i18n)

3. 新建文件index.js

import en_us from "@/i18n/en_us.js";
import zh_cn from "@/i18n/zh_cn.js";export default {en_us,zh_cn
}

4. 新建文件en_us.js

export default {login: {username: 'username'}
}

5. 新建文件zh_cn.js

export default {login: {username: '用户名'}
}

6. 使用

<script>
import {useI18n} from "vue-i18n";const {t} = useI18n()const data = ref({rules: {label: [{required: true, message: t('login.username'), trigger: "blur"}],value: [{required: true, message: t('login.username'), trigger: "blur"}]}
});</script><template><div>{{ t('login.username') }}</div>
</template>

7. 语言切换

<script>
import {useI18n} from 'vue-i18n'
import Cookies from "js-cookie";const {t, locale} = useI18n()const handleSetLanguage = (language) => {Cookies.set('language', language)locale.value = language;
}</script><template><div><el-dropdown @command="handleSetLanguage">// 这里去 阿里巴巴矢量图标库 找个图贴一下就行<template #dropdown><el-dropdown-menu><el-dropdown-item :command="'en_us'">English</el-dropdown-item><el-dropdown-item :command="'zh_cn'">简体中文</el-dropdown-item></el-dropdown-menu></template></el-dropdown></div></template>

8. 样式

iconfont-阿里巴巴矢量图标库

http://www.lryc.cn/news/312497.html

相关文章:

  • 二级水平导航菜单栏的实现
  • 在GitLab Python库中,mr.changes()和mr.diffs()的区别
  • JavaScript | 【讨论】微软早在2022年已经停用ie的今天,js开发还需要考虑ie9以下的情况嘛?
  • 网康科技 NS-ASG 应用安全网关 SQL注入漏洞复现(CVE-2024-2022)
  • 英福康INFICON软件真空Tware32中文操作手册
  • UnityAPI的学习——Quaternion类
  • chromedriverUnable to obtain driver for chrome using ,selenium找不到chromedriver
  • 剑指offer面试算法题目,自己总结的
  • 原生IP是什么?如何测试代理是不是原生IP?
  • 1、MQ_介绍、优缺点、类型等
  • Go-gin-example 第三部分 编写一个简单的文件日志系统
  • SQL中如何添加数据
  • 如何更好的理解设计模式之桥接模式
  • 归并排序
  • ELF 1技术贴|在NXP源码基础上适配开发板的按键功能
  • Linux:kubernetes(k8s)pod的基础操作(6)
  • 【Docker】掌握 Docker 镜像操作:从基础到进阶
  • flink重温笔记(十一):Flink 高级 API 开发——flink 四大基石之 Checkpoint(详解存储后端)
  • React富文本编辑器开发(九)位置
  • 一次直播和图像识别技术应用的探索之旅
  • Ubuntu 下使用 Pybind11 实现 C++ 调用 Python 接口的示例
  • docker安装和使用kafka
  • CTP-API开发系列之接口对接准备
  • C++小记 -链表
  • 网络协议学习DAY1
  • vue3中全局变量的定义和获取
  • 1.2 数据模型 数据库系统概论
  • C#中openFileDialog 对话框不在最顶层,TopMost的异常情况
  • 信息安全与阿里云等保三级方案实践总结
  • 嵌入式学习记录——线程