<script lang="ts" setup> import type { ComputedRef } from 'vue' import type { LocaleObject } from '#i18n' const { locale, setLocale } = useI18n() const { locales } = useI18n() as { locales: ComputedRef<LocaleObject[]> } </script> <template> <select :value="locale" @input="e => setLocale((e.target as any).value)"> <option v-for="item in locales" :key="item.code" :value="item.code" :selected="locale === item.code"> {{ item.name }} </option> </select> </template>