Skip to content

国际化 ​

语言文件位于:

text
src/locales/langs/
├── en-US/common.json
├── ja-JP/common.json
└── zh-CN/common.json

src/locales/index.ts 使用 import.meta.glob 扫描 JSON,并按 语言/命名空间 懒加载。当前语言保存在 localStorage 的 lang 键中,默认值为 zh-CN。

新增语言 ​

  1. 创建 src/locales/langs/<locale>/common.json。
  2. 保持各语言的键结构一致。
  3. 将 locale 加入 SUPPORTED_LOCALES。
  4. 调用 setLang('<locale>') 切换语言。
ts
import { setLang } from "@/locales";

await setLang("en-US");

切换后,模块会设置 Vue I18n locale、持久化选择,并同步更新页面正文、底部导航、路由标题、document.title 与 <html lang>。

页面路由标题保存的是翻译键,例如 common.routes.home。Tabs 和示例列表必须使用 computed,不要在 setup 时把 t() 的结果写入普通数组,否则切换语言后不会更新。

基于 MIT License 发布