🐛 fix i18n init bug

This commit is contained in:
landaiqing
2024-08-13 15:40:30 +08:00
parent 431e690f02
commit fa1301689a
24 changed files with 135 additions and 106 deletions

View File

@@ -2,7 +2,7 @@
import {createI18n} from 'vue-i18n';
import zh from './language/zh.ts';
import en from './language/en.ts';
import {parse} from "zipson/lib";
const messages = {
en,
@@ -11,16 +11,25 @@ const messages = {
const language: string = (navigator.language || 'en').toLocaleLowerCase(); // 获取浏览器的语言
const lang: string = localStorage.getItem("lang") as string;
function getLanguage(): string | null {
let lang: string | null = null;
const langStr: string | null = localStorage.getItem('lang');
if (langStr) {
lang = JSON.parse(langStr).lang;
}
return lang;
}
const i18n: any = createI18n({
legacy: false,
compositionOnly: false,
globalInjection: true,
silentTranslationWarn: true,
locale: parse(lang).lang || language.split('-')[0] || 'zh', // 首先从缓存里拿,没有的话就用浏览器语言,
silentFallbackWarn: true,
missingWarn: true,
fallbackWarn: false,
messages
});
legacy: false,
compositionOnly: false,
globalInjection: true,
silentTranslationWarn: true,
locale: getLanguage() || language.split('-')[0] || 'zh', // 首先从缓存里拿,没有的话就用浏览器语言,
silentFallbackWarn: true,
missingWarn: true,
fallbackWarn: false,
messages
})
;
export default i18n;

View File

@@ -34,6 +34,7 @@ export default {
rotateCaptchaTitle: "Please drag the slider to complete the puzzle",
systemError: "System error, please try again later",
captchaExpired: "captcha expired, please try again",
},
error: {
networkError: 'Network error, please try again later',
@@ -49,5 +50,7 @@ export default {
504: 'gateway timeout (504)',
505: 'http version not supported (505)',
other: 'connect error',
authTokenError: "auth token error, please try again later",
authTokenExpired: "auth token expired, please login again",
}
};

View File

@@ -35,6 +35,7 @@ export default {
systemError: "系统错误!请稍后再试!",
captchaExpired: "验证码已过期,请重新获取!",
},
error: {
networkError: '网络连接失败!',
@@ -50,6 +51,8 @@ export default {
504: '网关超时(504)',
505: 'HTTP版本不受支持(505)',
other: '连接出错',
authTokenError: "认证失败,请重新登录!",
authTokenExpired: "认证过期,请重新登录!",
}
};