Vue
Интегрируйте i1n с Vue.js, используя i1n SDK или режим Bridge Mode с vue-i18n.
Настройка
Запустите i1n init в вашем проекте Vue. CLI автоматически обнаружит vue-i18n, если он присутствует, и настроит вложенный формат JSON в вашем каталоге locales/.
Вы можете использовать i1n SDK в автономном режиме или подключить его к vue-i18n через Bridge Mode.
Автономный режим
Импортируйте init, t и setLocale из i1n. Загрузите ваши ресурсы перевода и используйте t() непосредственно в ваших компонентах или шаблонах.
Этот подход полностью заменяет vue-i18n. Используйте плагин Vue или композитную функцию для обеспечения реактивного переключения локали во всем вашем приложении.
Режим моста с vue-i18n
Если ваш проект использует vue-i18n, подключите его одной строкой: registerI1n((key, params) => i18n.global.t(key, params)). Функция i18n t() делегирует вызовы vue-i18n, обеспечивая строгую проверку типов.
i1n управляет JSON-файлами, AI-переводом и генерацией типов. vue-i18n продолжает обрабатывать загрузку во время выполнения, вспомогательную функцию шаблона $t() и композицию useI18n(). Нулевая стоимость миграции.
Развертывание
Добавьте i1n pull в свой шаг сборки. Работает как с проектами Vue на базе Vite, так и с Nuxt.
Файлы перевода, сгенерированные командой i1n pull, полностью совместимы с загрузкой файлов vue-i18n.
<template>
<h1>{{ $t('welcome') }}</h1>
</template>
<script setup>
import { useI18n } from 'vue-i18n'
const { t } = useI18n()
</script> import { registerI1n } from 'i1n'
import { createI18n } from 'vue-i18n'
const i18n = createI18n({ /* ... */ })
registerI1n((key, params) => i18n.global.t(key, params))