Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | <template> <div class="locale-switcher"> <Button v-for="lang in localeOptions" :key="lang.code" :handleClick="() => setLocale(lang.code)" :aria-label="lang.label" :active="locale === lang.code" variant="round" > <LazyImage :src="./lang.flag" alt="" className="flag" /> </Button> </div> </template> <script setup lang="ts"> import { localeOptions } from '@/i18n/locales'; import { loadLocale } from '@/main'; import { useI18n } from 'vue-i18n'; import './SidebarLanguageFlags.scss'; defineOptions({ inheritAttrs: false, }); defineProps<{}>(); const { locale } = useI18n(); const setLocale = async (code: string) => { if (code !== locale.value) { await loadLocale(code); localStorage.setItem('user-locale', code); locale.value = code; } }; </script> |