<script lang="ts" setup> import { ref } from 'vue'; import { useAppStore } from '../store'; import { useI18n } from 'vue-i18n'; const appStore = useAppStore(); const language = ref(appStore.language); const languageList = [ { name: 'English', value: 'en' }, { name: '中文', value: 'zh' }, { name: 'Português BR', value: 'ptBR' } ]; const { t, locale } = useI18n(); const onLanSelect = (val: any) => { appStore.updateLanguage(val); locale.value = val; document.title = t('title'); }; </script> <script lang="ts"> export default { name: 'LanguageSelect' }; </script> <template> <t-select v-model="language" :label="t('language')" :placeholder="t('selectLanguage')" @change="onLanSelect"> <t-option v-for="(item) in languageList" :key="item.value" :value="item.value" :label="item.name"></t-option> </t-select> </template>