# vue: GTPlugin URL: https://generaltranslation.com/it/docs/vue/reference/types/gt-plugin.mdx --- title: GTPlugin description: Installa lo stato di traduzione di Vue e controlla imperativamente l'impostazione regionale e la cache del catalogo. Riferimento API per GTPlugin. --- [`createGT()`](/docs/vue/reference/functions/create-gt) e [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) restituiscono questo plugin Vue. Il suo stato e comportamento appartengono alla funzione che lo ha creato. ## Panoramica [#overview] ```ts type GTPlugin = { getLocale(): string; install(app: App): void; loadTranslations(locale: string): Promise; setLocale(locale: string): Promise; }; ``` | Metodo | Descrizione | Tipo restituito | | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------- | ----------------------------- | | [`getLocale()`](#get-locale) | Restituisce l'impostazione regionale attualmente gestita dal plugin. | `string` | | [`install(app)`](#install) | Fornisce lo stato del plugin a un'applicazione Vue. | `void` | | [`loadTranslations(locale)`](#load-translations) | Precarica e memorizza nella cache un'impostazione regionale senza modificare quella attiva. | `Promise` | | [`setLocale(locale)`](#set-locale) | Modifica o rende persistente l'impostazione regionale attiva in base alla modalità Runtime del plugin. | `Promise` | ## `getLocale()` [#get-locale] **Tipo** `() => string` · **Obbligatorio** Per un plugin [`createGT()`](/docs/vue/reference/functions/create-gt) eseguito nel browser, questo metodo legge il cookie dell'impostazione regionale corrente e usa come fallback l'impostazione regionale esplicita o predefinita del plugin. Sul server restituisce il valore locale dell'istanza. Per un plugin [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa), restituisce l'impostazione regionale bloccata durante l'inizializzazione della pagina. Le modifiche dirette al cookie non modificano la SPA montata fino al successivo ricaricamento e bootstrap. ## `install(app)` [#install] **Tipo** `(app: App) => void` · **Obbligatorio** Fornisce lo stato di traduzione a componenti, formattatori e composabili tramite l'iniezione delle dipendenze di Vue. La chiamata a `app.use(plugin)` richiama questo metodo. L'installazione avvia il caricamento dell'impostazione regionale attiva. Un plugin [`createGT()`](/docs/vue/reference/functions/create-gt) può essere montato immediatamente con il contenuto sorgente e rieseguire il rendering quando il caricamento ha esito positivo. Un plugin [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) viene restituito già precaricato. Installa esattamente il plugin SPA restituito dall'inizializzazione. La creazione e l'installazione di un secondo plugin separano le ricerche dei componenti dalle ricerche di [`t()`](/docs/vue/reference/functions/t) a livello di modulo. Un composabile utilizzato senza alcun plugin installato genera un errore diagnostico. ## `loadTranslations()` [#load-translations] **Tipo** `(locale: string) => Promise<`[`TranslationCatalog`](/docs/vue/reference/types/translation-catalog)`>` · **Obbligatorio** Carica e memorizza nella cache un catalogo di destinazione senza modificare l'impostazione regionale attiva. L'impostazione regionale predefinita restituisce il catalogo vuoto già esistente senza chiamare il loader configurato. I risultati ottenuti correttamente rimangono nella cache di questo plugin e le chiamate simultanee per la stessa impostazione regionale risolta condividono una promise. In un plugin SPA, gli alias delle impostazioni regionali e il fallback delle impostazioni regionali supportate vengono applicati prima del caricamento. Il rifiuto da parte del loader viene registrato e rilanciato. L'errore non viene memorizzato nella cache, quindi una chiamata successiva può riprovare. ## `setLocale()` [#set-locale] **Tipo** `(locale: string) => Promise` · **Obbligatorio** La transizione dipende da come è stato creato il plugin: * **Plugin [`createGT()`](/docs/vue/reference/functions/create-gt):** carica un catalogo non presente nella cache, quindi aggiorna il cookie e i consumer reattivi. Se il caricamento viene rifiutato, l'impostazione regionale e il cookie esistenti restano invariati. Se le chiamate si sovrappongono, viene applicata solo la richiesta più recente. * **Plugin [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa):** determina l'impostazione regionale richiesta, scrive il cookie e ricarica il documento. Non carica il catalogo di destinazione né modifica l'impostazione regionale bloccata nella pagina corrente prima del ricaricamento. [`useSetLocale()`](/docs/vue/reference/composables/use-set-locale) espone questo comportamento tramite il plugin installato. ## Esempio [#example] ```ts import { createApp } from 'vue'; import { createGT } from 'gt-vue'; import App from './App.vue'; const gt = createGT({ defaultLocale: 'en', loadTranslations }); await gt.loadTranslations('fr'); createApp(App).use(gt).mount('#app'); await gt.setLocale('fr'); console.log(gt.getLocale()); // "fr" ```