В настоящее время я пытаюсь интернационализировать свой проект vue 3 vite с помощью @intlify/vite-plugin-vue-i18n. Проблема, с которой я столкнулся здесь, заключается в том, что в настоящее время мне нужно импортировать и настроить переменную t для каждого компонента, чтобы использовать ее.
пример компонента:
<template>
t('translation')
</template>
<script>
import { useI18n } from 'vue-i18n'
export default {
setup(){
const {t} = useI18n();
return {t}
},
};
</script>
Мой вопрос: если это возможно, как лучше всего сделать переменную t глобальной? Я не могу найти никаких примеров/помощи по этому поводу, так как все они импортируют его в каждый компонент. Вся помощь будет оценена! :) Для справки вот соответствующие файлы.
export default defineConfig({
plugins: [
vue(),
vueI18n({
include: path.resolve(__dirname, './src/locales/**')
})
]
})
main.ts:
import i18n from './i18n';
const app = createApp(App);
app.use(i18n);
app.mount("#app");
i18n.js:
import { createI18n } from 'vue-i18n'
import messages from '@intlify/vite-plugin-vue-i18n/messages'
export default createI18n({
legacy: false,
locale: 'no',
messages
})