From 31588b2f1c6ab85e31156cfd8bdc9023d223809f Mon Sep 17 00:00:00 2001 From: Jakob Scheid Date: Fri, 7 Aug 2026 01:58:21 +0200 Subject: [PATCH] refactor(i18n): move locale updater to language switch button --- src/App.vue | 2 -- src/features/i18n/components/LanguageSwitchButton.vue | 8 +++++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/App.vue b/src/App.vue index f8220bd..904d5e5 100644 --- a/src/App.vue +++ b/src/App.vue @@ -54,8 +54,6 @@ updateColorScheme(colorScheme.value); watchEffect(() => updatePageTitle(route)); -watch(() => getSetting(LANGUAGE_PATH), setLocale); - onMounted(() => { setLocale(getSetting(LANGUAGE_PATH)); }); diff --git a/src/features/i18n/components/LanguageSwitchButton.vue b/src/features/i18n/components/LanguageSwitchButton.vue index d4c86bb..1f12a79 100644 --- a/src/features/i18n/components/LanguageSwitchButton.vue +++ b/src/features/i18n/components/LanguageSwitchButton.vue @@ -19,12 +19,12 @@ import Icon from '@/features/icons/components/Icon.vue'; import { LANGUAGE_PATH } from '@/config/featureSettings'; import { useSettings } from '@/features/settings/composables/useSettings'; -import { ref } from 'vue'; +import { ref, watch } from 'vue'; import { useI18n } from 'vue-i18n'; -import { SUPPORTED_LANGUAGES } from '@/i18n'; +import { setLocale, SUPPORTED_LANGUAGES } from '@/i18n'; const { t, locale } = useI18n(); -const { setSetting } = useSettings(); +const { setSetting, getSetting } = useSettings(); const isOpen = ref(false); const languageDropdown = ref(null); @@ -34,6 +34,8 @@ const selectLanguage = function selectLanguage (code) { close(); }; +watch(() => getSetting(LANGUAGE_PATH), setLocale); + const close = function () { document.removeEventListener('click', closeWrapperOnClickOutsite); isOpen.value = false;