|
|
- 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
|