国际化
实现国际化主要分为三个部分
i18n 配置
引入 i18n 库,配置基础选项
- locale:当前使用语言,比如 'zh'
- fallbackLocale:备选语言,回退语言
- messages:最重要的一样,将各个语言包挂载进来
- 其他配置选项
语言包
语言包本质是一个个 JSON 或 JS 对象,通常放在 locales/ 目录下
- 格式:键值对形式,
{ "key": "对应语言的文案" }key 相同、value 是对应翻译 - ...
使用国际化
html
<div>{{ $t('hello') }}</div>js
const { t, locale } = useI18n()
console.log(t('hello'))
const localePath = useLocalePath()
const router = useRouter()
router.push(localePath('/mine'))