vue3使用 i18n
官方文档链接
Vue I18n 官方文档安装 Vue I18n
npm install vue-i18n
创建语言文件
// lang/zh.ts export default { login: { login: '登录', userName: '用户名', password: '密码', }, };
创建 i18n 配置文件
// i18n/index.js import { createI18n } from 'vue-i18n'; import zh from './zh'; const language = (navigator.language || 'en').toLocaleLowerCase(); // 获取浏览器的语言设置 const i18n = createI18n({ legacy: false, locale: localStorage.getItem('lang') || language, // 优先从本地存储获取语言设置,如果没有则使用浏览器默认语言 fallbackLocale: 'en', // 当前语言无法找到匹配的翻译时,使用的备选语言 messages: { en, zh, }, }); export default i18n;
在主入口文件中使用 i18n
// main.js import i18n from './i18n/index.js'; app.use(i18n);
在组件中使用 I18n
<template> {{ $t("login.password") }} <div v-t="'login.password'"></div> </template> <script setup lang="ts"> import { useI18n } from 'vue-i18n'; const { t } = useI18n(); console.log(t("home.hello")); </script>
切换语言
<template> <div class="menu"> <div @click="changeLang('en')">English</div> <div @click="changeLang('zh')">中文</div> </div> </template> <script setup lang="ts"> import { useI18n } from 'vue-i18n'; const { locale } = useI18n(); const changeLang = (lang: string) => { locale.value = lang; localStorage.setItem('lang', lang); // 保存用户的语言选择到本地存储 }; </script>
分类:
vue3.0
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了