Vue
Integra i1n con Vue.js usando l'SDK di i1n o la Modalità Bridge con vue-i18n.
Configurazione
Esegui i1n init nel tuo progetto Vue. La CLI rileva automaticamente vue-i18n se presente e configura il formato JSON nidificato nella tua directory locales/.
Puoi usare l'SDK di i1n in modalità standalone o collegarlo a vue-i18n tramite Bridge Mode.
Modalità Autonoma
Importa init, t e setLocale da i1n. Carica le tue risorse di traduzione e usa t() direttamente nei tuoi componenti o template.
Questo approccio sostituisce completamente vue-i18n. Utilizza un plugin o un composable di Vue per fornire un cambio di locale reattivo in tutta la tua applicazione.
Modalità Bridge con vue-i18n
Se il tuo progetto utilizza vue-i18n, collegalo con una riga: registerI1n((key, params) => i18n.global.t(key, params)). La funzione t() di i1n delega a vue-i18n fornendo al contempo un controllo rigoroso dei tipi.
i1n gestisce i file JSON, la traduzione AI e la generazione di tipi. vue-i18n continua a gestire il caricamento in fase di runtime, l'helper di template $t() e il composable useI18n(). Costo di migrazione zero.
Distribuzione
Aggiungi i1n pull al tuo passaggio di build. Funziona sia con progetti Vue basati su Vite che con Nuxt.
I file di traduzione generati da i1n pull sono completamente compatibili con il caricamento basato su file di 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))