# vue: Guida rapida URL: https://generaltranslation.com/it/docs/vue/quickstart.mdx --- title: Guida rapida description: Aggiungi più lingue a un'applicazione Vue con General Translation in meno di 10 minuti. related: links: - /docs/vue/guides/translating-content - /docs/vue/guides/translating-strings - /docs/vue/guides/managing-locales - /docs/vue/guides/storing-translations --- Al termine di questa guida, la tua app Vue visualizzerà contenuti in più lingue e consentirà agli utenti di cambiare l'impostazione regionale attiva senza ricaricare la pagina. `gt-vue` funziona come plugin Vue. Il plugin carica ciascun catalogo di traduzione una sola volta, lo memorizza nella cache e renderizza nuovamente in modo reattivo i contenuti tradotti quando cambia l'impostazione regionale. **Prerequisiti:** * Un'applicazione Vue 3, versione 3.3 o successiva * Node.js 18+ ## Quickstart [#quickstart] ### 1. Installa i pacchetti `gt-vue` gestisce le traduzioni nella tua app. [`gt`](/docs/cli/quickstart) estrae i contenuti sorgente e genera cataloghi di traduzione. ```bash npm install gt-vue npm install --save-dev gt ``` ```bash yarn add gt-vue yarn add --dev gt ``` ```bash bun add gt-vue bun add --dev gt ``` ```bash pnpm add gt-vue pnpm add --save-dev gt ``` ### 2. Crea un file di configurazione per la traduzione Crea `gt.config.json` nella radice del progetto. Imposta l'impostazione regionale del contenuto sorgente, le impostazioni regionali in cui tradurre e il percorso di output dei cataloghi generati. ```json title="gt.config.json" { "defaultLocale": "en", "locales": ["es", "fr", "ja"], "files": { "gt": { "output": "src/_gt/[locale].json" } } } ``` * `defaultLocale` è la lingua dei contenuti sorgente. * `locales` elenca le lingue di destinazione. Scegli qualsiasi impostazione regionale dall'[elenco delle impostazioni regionali supportate](/docs/platform/dashboard/reference/supported-locales). * `files.gt.output` indica alla CLI dove scrivere ciascun catalogo. Mantieni il placeholder `[locale]` nel percorso. ### 3. Crea un loader delle traduzioni Crea un loader che restituisca il catalogo generato per l'impostazione regionale richiesta: ```ts title="src/loadTranslations.ts" import type { LoadTranslations } from 'gt-vue'; const loadTranslations: LoadTranslations = async (locale) => { try { return (await import(`./_gt/${locale}.json`)).default; } catch { return {}; } }; export default loadTranslations; ``` Il loader non viene chiamato per l'impostazione regionale predefinita perché il contenuto sorgente funge già da catalogo. Restituendo un oggetto vuoto, l'app può renderizzare il contenuto sorgente quando il catalogo di destinazione non è disponibile. ### 4. Registra il plugin Crea un plugin [`createGT()`](/docs/vue/reference/functions/create-gt) e installalo prima di montare l'app: ```ts title="src/main.ts" import { createApp } from 'vue'; import { createGT } from 'gt-vue'; import App from './App.vue'; import gtConfig from '../gt.config.json'; import loadTranslations from './loadTranslations'; const gt = createGT({ defaultLocale: gtConfig.defaultLocale, loadTranslations, }); createApp(App).use(gt).mount('#app'); ``` Il plugin utilizza il cookie salvato dell'impostazione regionale, se disponibile; altrimenti usa `defaultLocale`. Viene montato immediatamente con il contenuto sorgente, quindi si aggiorna reattivamente al termine del caricamento del catalogo richiesto. ### 5. Contrassegna i contenuti da tradurre Usa [``](/docs/vue/reference/components/t) per contenuti di template formattati e [`useGT()`](/docs/vue/reference/composables/use-gt) per stringhe autonome, come gli attributi degli input: ```vue title="src/App.vue" ``` Mantieni statico il contenuto all'interno di [``](/docs/vue/reference/components/t). Usa [variabili e componenti di diramazione](/docs/vue/guides/formatting-variables) per i valori a runtime e le alternative condizionali. ### 6. Aggiungi un selettore di lingua Leggi l'impostazione regionale attuale con [`useLocale()`](/docs/vue/reference/composables/use-locale) e modificala con [`useSetLocale()`](/docs/vue/reference/composables/use-set-locale): ```vue title="src/App.vue" ``` [`useSetLocale()`](/docs/vue/reference/composables/use-set-locale) carica un catalogo mancante prima di salvare il cookie dell'impostazione regionale e di rieseguire il rendering dei consumer reattivi. Con il loader mostrato sopra, un file mancante restituisce un catalogo vuoto, modifica l'impostazione regionale e renderizza il contenuto sorgente. Se invece il loader genera un errore, l'impostazione regionale attuale rimane attiva. ### 7. Autenticati e traduci Autenticati con General Translation: ```bash npx gt auth ``` Il comando ti guida nell'accesso e nella creazione delle credenziali. Conserva la chiave API di produzione generata nel file delle variabili d'ambiente locale, fuori dal codice eseguito nel browser e dal controllo di versione. Quindi genera i cataloghi di traduzione: ```bash npx gt translate ``` La CLI analizza il codice sorgente Vue, traduce il contenuto estratto e scrive un file JSON per ogni impostazione regionale di destinazione in `src/_gt/`. Esegui nuovamente il comando ogni volta che il contenuto sorgente cambia. ## Risoluzione dei problemi [#troubleshooting] L'impostazione regionale attiva viene memorizzata nel cookie `generaltranslation.locale`. Elimina eventuali cookie obsoleti, quindi seleziona nuovamente un'impostazione regionale di destinazione. Verifica inoltre che il relativo file JSON esista in `src/_gt/` e che il loader restituisca l'esportazione predefinita. Chiama la funzione restituita da [`useGT()`](/docs/vue/reference/composables/use-gt) nel template o in un valore calcolato di Vue. Una stringa tradotta una volta durante il setup è uno snapshot e non viene ricalcolata quando cambia lo stato reattivo dell'impostazione regionale. ## Next steps - /docs/vue/guides/translating-content - /docs/vue/guides/translating-strings - /docs/vue/guides/managing-locales - /docs/vue/guides/storing-translations