Browse Source
fix: switching language does not load the translation of the component correctly (#4205)
closes #4191
pull/4212/head
Li Kui
1 year ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with
4 additions and
11 deletions
-
apps/web-antd/src/locales/index.ts
-
apps/web-ele/src/locales/index.ts
-
apps/web-naive/src/locales/index.ts
-
packages/locales/src/i18n.ts
-
playground/src/locales/index.ts
|
|
|
@ -91,4 +91,4 @@ async function setupI18n(app: App, options: LocaleSetupOptions = {}) { |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
export { $t, antdLocale, loadMessages, setupI18n }; |
|
|
|
export { $t, antdLocale, setupI18n }; |
|
|
|
|
|
|
|
@ -91,4 +91,4 @@ async function setupI18n(app: App, options: LocaleSetupOptions = {}) { |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
export { $t, elementLocale, loadMessages, setupI18n }; |
|
|
|
export { $t, elementLocale, setupI18n }; |
|
|
|
|
|
|
|
@ -28,4 +28,4 @@ async function setupI18n(app: App, options: LocaleSetupOptions = {}) { |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
export { $t, loadMessages, setupI18n }; |
|
|
|
export { $t, setupI18n }; |
|
|
|
|
|
|
|
@ -10,8 +10,6 @@ import type { |
|
|
|
import { type App, unref } from 'vue'; |
|
|
|
import { createI18n } from 'vue-i18n'; |
|
|
|
|
|
|
|
const loadedLanguages = new Set<string>(); |
|
|
|
|
|
|
|
const i18n = createI18n({ |
|
|
|
globalInjection: true, |
|
|
|
legacy: false, |
|
|
|
@ -78,10 +76,6 @@ async function loadLocaleMessages(lang: SupportedLanguagesType) { |
|
|
|
return setI18nLanguage(lang); |
|
|
|
} |
|
|
|
|
|
|
|
if (loadedLanguages.has(lang)) { |
|
|
|
return setI18nLanguage(lang); |
|
|
|
} |
|
|
|
|
|
|
|
const message = await localesMap[lang]?.(); |
|
|
|
|
|
|
|
if (message?.default) { |
|
|
|
@ -91,7 +85,6 @@ async function loadLocaleMessages(lang: SupportedLanguagesType) { |
|
|
|
const mergeMessage = await loadMessages(lang); |
|
|
|
i18n.global.mergeLocaleMessage(lang, mergeMessage); |
|
|
|
|
|
|
|
loadedLanguages.add(lang); |
|
|
|
return setI18nLanguage(lang); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -91,4 +91,4 @@ async function setupI18n(app: App, options: LocaleSetupOptions = {}) { |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
export { $t, antdLocale, loadMessages, setupI18n }; |
|
|
|
export { $t, antdLocale, setupI18n }; |
|
|
|
|