From d37ceed2ad5b94bbfc71a8a4cbdb7b498ddf724d Mon Sep 17 00:00:00 2001
From: jhzh <1628036192@qq.com>
Date: Sat, 19 Jul 2025 14:14:18 +0800
Subject: [PATCH] 1
---
src/locales/index.js | 97 ++++++++++++++++++++++++++----------------------
1 files changed, 53 insertions(+), 44 deletions(-)
diff --git a/src/locales/index.js b/src/locales/index.js
index 3c17511..5d03136 100644
--- a/src/locales/index.js
+++ b/src/locales/index.js
@@ -1,39 +1,50 @@
-import Vue from 'vue';
-import VueI18n from 'vue-i18n';
+import Vue from 'vue'
+import VueI18n from 'vue-i18n'
+import en from './en.json'
+import india from '@/locales/hi.json'
+import zh from '@/locales/zh.json'
+import ty from '@/locales/th.json'
+import ry from '@/locales/jp.json'
+import hy from '@/locales/kor.json'
+import de from '@/locales/de.json'
+import fra from '@/locales/fra.json'
-import chinese from './zh-CN.js';
-import english from './en.js';
-import chinesechar from './tw.js';
-
-Vue.use(VueI18n);
-
-function getCookie(name) {
- // 获取cookie
- var arr;
- var reg = new RegExp(`(^| )${name}=([^;]*)(;|$)`);
- if (arr = document.cookie.match(reg)) {
- return unescape(arr[2]);
- }
- return null;
-}
-const DEFAULT_LANG = 'en-us';
-const LOCALE_KEY = 'language';
-
+Vue.use(VueI18n)
+const DEFAULT_LANG = window.localStorage.getItem('language') || 'ja'
+const LOCALE_KEY = 'language'
+window.localStorage.setItem('language', DEFAULT_LANG)
const locales = {
- zh_cn: {
- ...chinese,
- },
en: {
- ...english,
+ ...en
},
- tw: {
- ...chinesechar,
+ hi: {
+ ...india
},
+ 'zh-CN': {
+ ...zh
+ },
+ th: {
+ ...ty
+ },
+ fr: {
+ ...fra
+ },
+ de: {
+ ...de
+ },
+ ja: {
+ ...ry
+ },
+ ko: {
+ ...hy
+ }
};
// en-us zh-cn
-//let langLocale = getCookie(LOCALE_KEY) || 'en';
-let langLocale = window.localStorage.getItem(LOCALE_KEY) || 'en';
-
+// let langLocale = getCookie(LOCALE_KEY) || 'en';
+if (!window.localStorage.getItem(LOCALE_KEY)) {
+ window.localStorage.setItem(LOCALE_KEY, DEFAULT_LANG)
+}
+let langLocale = window.localStorage.getItem(LOCALE_KEY) || DEFAULT_LANG;
const i18n = new VueI18n({
locale: langLocale,
messages: locales,
@@ -42,34 +53,32 @@
const init = Vue.prototype._init;
Vue.prototype._init = function (options) {
init.call(this, {
- i18n,
- ...options,
- });
+ i18n,
+ ...options
+ })
};
export const setup = lang => {
if (lang === undefined) {
// lang = window.localStorage.getItem(LOCALE_KEY);
- //const language = getCookie(LOCALE_KEY);
- const language = window.localStorage.getItem(LOCALE_KEY);
+ // const language = getCookie(LOCALE_KEY);
+ const language = window.localStorage.getItem(LOCALE_KEY)
if (language) {
- langLocale = language.replace('-', '_').toLowerCase();
+ langLocale = language.replace('-', '_').toLowerCase()
}
if (undefined !== langLocale && langLocale !== '') {
- lang = langLocale;
+ lang = langLocale
}
if (locales[lang] === undefined) {
- lang = DEFAULT_LANG;
+ lang = DEFAULT_LANG
}
// console.log(`lang-${lang}`);
}
+ Vue.config.lang = lang
+ i18n.locale = lang
+}
- Vue.config.lang = lang;
- i18n.locale = lang;
-};
+setup()
-setup();
-
-
-export default i18n;
+export default i18n
--
Gitblit v1.9.3