fix: switching language does not load the translation of the component correctly (#4205)

closes #4191
This commit is contained in:
Li Kui 2024-08-21 10:06:06 +08:00 committed by GitHub
parent fab92ee7e1
commit cd652941cd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 4 additions and 11 deletions

View File

@ -91,4 +91,4 @@ async function setupI18n(app: App, options: LocaleSetupOptions = {}) {
}); });
} }
export { $t, antdLocale, loadMessages, setupI18n }; export { $t, antdLocale, setupI18n };

View File

@ -91,4 +91,4 @@ async function setupI18n(app: App, options: LocaleSetupOptions = {}) {
}); });
} }
export { $t, elementLocale, loadMessages, setupI18n }; export { $t, elementLocale, setupI18n };

View File

@ -28,4 +28,4 @@ async function setupI18n(app: App, options: LocaleSetupOptions = {}) {
}); });
} }
export { $t, loadMessages, setupI18n }; export { $t, setupI18n };

View File

@ -10,8 +10,6 @@ import type {
import { type App, unref } from 'vue'; import { type App, unref } from 'vue';
import { createI18n } from 'vue-i18n'; import { createI18n } from 'vue-i18n';
const loadedLanguages = new Set<string>();
const i18n = createI18n({ const i18n = createI18n({
globalInjection: true, globalInjection: true,
legacy: false, legacy: false,
@ -78,10 +76,6 @@ async function loadLocaleMessages(lang: SupportedLanguagesType) {
return setI18nLanguage(lang); return setI18nLanguage(lang);
} }
if (loadedLanguages.has(lang)) {
return setI18nLanguage(lang);
}
const message = await localesMap[lang]?.(); const message = await localesMap[lang]?.();
if (message?.default) { if (message?.default) {
@ -91,7 +85,6 @@ async function loadLocaleMessages(lang: SupportedLanguagesType) {
const mergeMessage = await loadMessages(lang); const mergeMessage = await loadMessages(lang);
i18n.global.mergeLocaleMessage(lang, mergeMessage); i18n.global.mergeLocaleMessage(lang, mergeMessage);
loadedLanguages.add(lang);
return setI18nLanguage(lang); return setI18nLanguage(lang);
} }

View File

@ -91,4 +91,4 @@ async function setupI18n(app: App, options: LocaleSetupOptions = {}) {
}); });
} }
export { $t, antdLocale, loadMessages, setupI18n }; export { $t, antdLocale, setupI18n };