From 9937b6156d4ab1cabc83ff0789393103a8857ea8 Mon Sep 17 00:00:00 2001 From: shaohuzhang1 <80892890+shaohuzhang1@users.noreply.github.com> Date: Mon, 10 Feb 2025 14:43:36 +0800 Subject: [PATCH] fix: Fix default language (#2202) Co-authored-by: wangdan-fit2cloud --- ui/src/locales/useLocale.ts | 4 ++-- ui/src/main.ts | 2 +- ui/src/stores/modules/application.ts | 5 ++--- ui/src/stores/modules/user.ts | 6 +++--- .../application-overview/component/DisplaySettingDialog.vue | 5 ++--- .../component/XPackDisplaySettingDialog.vue | 6 +++--- ui/src/views/login/components/wecomQrCode.vue | 2 +- ui/src/views/login/index.vue | 2 +- 8 files changed, 15 insertions(+), 17 deletions(-) diff --git a/ui/src/locales/useLocale.ts b/ui/src/locales/useLocale.ts index f359920f3..60b8db1f2 100644 --- a/ui/src/locales/useLocale.ts +++ b/ui/src/locales/useLocale.ts @@ -9,11 +9,11 @@ export function useLocale() { function changeLocale(lang: string) { // 如果切换的语言不在对应语言文件里则默认为简体中文 if (!langCode.includes(lang)) { - lang = 'zh-CN'; + lang = 'en-US'; } locale.value = lang; - useLocalStorage(localeConfigKey, 'zh-CN').value = lang; + useLocalStorage(localeConfigKey, 'en-US').value = lang; } const getComponentsLocale = computed(() => { diff --git a/ui/src/main.ts b/ui/src/main.ts index abc666426..a31326d7e 100644 --- a/ui/src/main.ts +++ b/ui/src/main.ts @@ -58,7 +58,7 @@ const locale_map: any = { 'en-US': enUs } app.use(ElementPlus, { - locale: locale_map[localStorage.getItem('MaxKB-locale') || navigator.language || 'zh-CN'] + locale: locale_map[localStorage.getItem('MaxKB-locale') || navigator.language || 'en-US'] }) app.use(router) diff --git a/ui/src/stores/modules/application.ts b/ui/src/stores/modules/application.ts index 3d30e62dd..61a41dd81 100644 --- a/ui/src/stores/modules/application.ts +++ b/ui/src/stores/modules/application.ts @@ -2,7 +2,7 @@ import { defineStore } from 'pinia' import applicationApi from '@/api/application' import applicationXpackApi from '@/api/application-xpack' import { type Ref } from 'vue' - +import { getBrowserLang } from '@/locales/index' import useUserStore from './user' const useApplicationStore = defineStore({ id: 'application', @@ -79,8 +79,7 @@ const useApplicationStore = defineStore({ applicationApi .getAppProfile(loading) .then((res) => { - sessionStorage.setItem('language', res.data?.language) - + sessionStorage.setItem('language', res.data?.language || getBrowserLang()) resolve(res) }) .catch((error) => { diff --git a/ui/src/stores/modules/user.ts b/ui/src/stores/modules/user.ts index 7a1970d77..cb1e80f0b 100644 --- a/ui/src/stores/modules/user.ts +++ b/ui/src/stores/modules/user.ts @@ -34,7 +34,7 @@ const useUserStore = defineStore({ getLanguage() { return this.userType === 1 ? localStorage.getItem('MaxKB-locale') || getBrowserLang() - : sessionStorage.getItem('language') + : sessionStorage.getItem('language') || getBrowserLang() }, showXpack() { return this.isXPack @@ -124,7 +124,7 @@ const useUserStore = defineStore({ async profile() { return UserApi.profile().then(async (ok) => { this.userInfo = ok.data - useLocalStorage(localeConfigKey, 'zh-CN').value = ok.data?.language + useLocalStorage(localeConfigKey, 'en-US').value = ok.data?.language || this.getLanguage() return this.asyncGetProfile() }) }, @@ -171,7 +171,7 @@ const useUserStore = defineStore({ return new Promise((resolve, reject) => { UserApi.postLanguage({ language: lang }, loading) .then(async (ok) => { - useLocalStorage(localeConfigKey, 'zh-CN').value = lang + useLocalStorage(localeConfigKey, 'en-US').value = lang window.location.reload() resolve(ok) }) diff --git a/ui/src/views/application-overview/component/DisplaySettingDialog.vue b/ui/src/views/application-overview/component/DisplaySettingDialog.vue index b7f83e40a..192329cff 100644 --- a/ui/src/views/application-overview/component/DisplaySettingDialog.vue +++ b/ui/src/views/application-overview/component/DisplaySettingDialog.vue @@ -49,8 +49,7 @@ import type { FormInstance, FormRules, UploadFiles } from 'element-plus' import applicationApi from '@/api/application' import { isWorkFlow } from '@/utils/application' import { MsgSuccess, MsgError } from '@/utils/message' -import { langList, t } from '@/locales' - +import { getBrowserLang, langList, t } from '@/locales' const route = useRoute() const { params: { id } @@ -80,7 +79,7 @@ const open = (data: any, content: any) => { form.value.show_source = data.show_source form.value.language = data.language if (!form.value.language) { - form.value.language = 'zh-CN' + form.value.language = getBrowserLang() } dialogVisible.value = true diff --git a/ui/src/views/application-overview/component/XPackDisplaySettingDialog.vue b/ui/src/views/application-overview/component/XPackDisplaySettingDialog.vue index 9d104160e..399304889 100644 --- a/ui/src/views/application-overview/component/XPackDisplaySettingDialog.vue +++ b/ui/src/views/application-overview/component/XPackDisplaySettingDialog.vue @@ -383,7 +383,7 @@ import type { FormInstance, FormRules, UploadFiles } from 'element-plus' import { isAppIcon, isWorkFlow } from '@/utils/application' import applicationXpackApi from '@/api/application-xpack' import { MsgSuccess, MsgError } from '@/utils/message' -import { langList, t } from '@/locales' +import { getBrowserLang, langList, t } from '@/locales' import useStore from '@/stores' import { cloneDeep } from 'lodash' @@ -398,7 +398,7 @@ const emit = defineEmits(['refresh']) const defaultSetting = { show_source: false, - language: 'zh-CN', + language: getBrowserLang(), show_history: true, draggable: true, show_guide: true, @@ -427,7 +427,7 @@ const form = ref({ const xpackForm = ref({ show_source: false, - language: 'zh-CN', + language: getBrowserLang(), show_history: false, draggable: false, show_guide: false, diff --git a/ui/src/views/login/components/wecomQrCode.vue b/ui/src/views/login/components/wecomQrCode.vue index cb61b22aa..0957d6bc3 100644 --- a/ui/src/views/login/components/wecomQrCode.vue +++ b/ui/src/views/login/components/wecomQrCode.vue @@ -36,7 +36,7 @@ const init = async () => { corpId: props.config.corp_id, agentId: props.config.agent_id } - const lang = localStorage.getItem('MaxKB-locale') || getBrowserLang() || 'zh-CN' + const lang = localStorage.getItem('MaxKB-locale') || getBrowserLang() || 'en-US' const redirectUri = window.location.origin try { wwLogin.value = ww.createWWLoginPanel({ diff --git a/ui/src/views/login/index.vue b/ui/src/views/login/index.vue index d732fd991..85145db85 100644 --- a/ui/src/views/login/index.vue +++ b/ui/src/views/login/index.vue @@ -217,7 +217,7 @@ const login = () => { user .login(loginMode.value, loginForm.value.username, loginForm.value.password) .then(() => { - locale.value = localStorage.getItem('MaxKB-locale') || getBrowserLang() || 'zh-CN' + locale.value = localStorage.getItem('MaxKB-locale') || getBrowserLang() || 'en-US' router.push({ name: 'home' }) }) .finally(() => (loading.value = false))