File size: 880 Bytes
755dd12 |
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 37 38 39 40 41 42 43 |
<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>
|