liveh5-nuxt/app/plugins/i18n.ts

37 lines
1.0 KiB
TypeScript
Raw Normal View History

import type { Locale as TypeLocale } from '#i18n'
2025-01-08 05:26:12 +00:00
import { Locale } from 'vant'
import enUS from 'vant/es/locale/lang/en-US'
import zhCN from 'vant/es/locale/lang/zh-CN'
import jaJP from 'vant/es/locale/lang/ja-JP'
import zhTW from 'vant/es/locale/lang/zh-TW'
2025-01-08 05:26:12 +00:00
export default defineNuxtPlugin(() => {
// 载入 vant 语言包
2025-01-08 05:26:12 +00:00
Locale.use('zh-CN', zhCN)
Locale.use('en-US', enUS)
Locale.use('ja-JP', jaJP)
Locale.use('zh-TW', zhTW)
2025-01-08 05:26:12 +00:00
if (import.meta.client) {
const i18n = useNuxtApp().$i18n
const { setLocale } = i18n
// 暂时设置固定语言,用于调试
// 可以根据需要修改这里的语言代码:'zh-CN' | 'en-US' | 'ja-JP' | 'zh-TW'
/* const fixedLang = 'zh-CN'
setLocale(fixedLang)
Locale.use(fixedLang)*/
// 原自动检测系统语言的逻辑(暂时注释)
const lang = localStorage.getItem('lang')
2025-01-08 05:26:12 +00:00
if (lang) {
setLocale(lang as TypeLocale)
2025-01-08 05:26:12 +00:00
Locale.use(lang)
}
else {
setLocale(i18n.locale.value)
Locale.use(i18n.locale.value)
}
2025-01-08 05:26:12 +00:00
}
})