import { createI18n } from 'vue-i18n'
|
|
import en from './locales/en.json'
|
|
import zh from './locales/zh.json'
|
|
import ja from './locales/ja.json'
|
|
import ar from './locales/ar.json'
|
|
import fr from './locales/fr.json'
|
|
import ko from './locales/ko.json'
|
|
import ms from './locales/ms.json'
|
|
import pt from './locales/pt.json'
|
|
import ru from './locales/ru.json'
|
|
import th from './locales/th.json'
|
|
import vi from './locales/vi.json'
|
|
import zh_TW from './locales/zh-TW.json'
|
|
|
|
// 获取浏览器语言或从本地存储中获取
|
|
const getBrowserLanguage = () => {
|
|
const storedLanguage = localStorage.getItem('language')
|
|
if (storedLanguage) {
|
|
return storedLanguage
|
|
}
|
|
|
|
const browserLanguage = navigator.language.toLowerCase()
|
|
if (browserLanguage.includes('zh')) {
|
|
return 'zh'
|
|
} else if (browserLanguage.includes('ja')) {
|
|
return 'ja'
|
|
} else {
|
|
return 'en' // 默认英语
|
|
}
|
|
}
|
|
|
|
const i18n = createI18n({
|
|
legacy: false, // 使用组合式API
|
|
locale: getBrowserLanguage(),
|
|
fallbackLocale: 'en',
|
|
messages: {
|
|
en,
|
|
zh,
|
|
ja,
|
|
ar,
|
|
fr,
|
|
ko,
|
|
ms,
|
|
pt,
|
|
ru,
|
|
th,
|
|
vi,
|
|
zh_TW
|
|
}
|
|
})
|
|
|
|
export default i18n
|