Active locale: {{ locale }}
``` Leggi `locale.value` nelle normali espressioni di script. I componenti, i valori calcolati e gli effetti di rendering che leggono il ref si aggiornano al termine del cambio reattivo dell'impostazione regionale. ## Crea un selettore della lingua [#switcher] [`useSetLocale()`](/docs/vue/reference/composables/use-set-locale) restituisce un setter async. Attendi il suo completamento affinché l'interfaccia possa indicare un caricamento in corso o gestire un errore: ```vue title="src/components/LocaleSwitcher.vue" ``` Con un plugin [`createGT()`](/docs/vue/reference/functions/create-gt), il setter carica un catalogo non memorizzato nella cache prima di modificare l'impostazione regionale. I risultati ottenuti correttamente vengono memorizzati nella cache. Se le richieste si sovrappongono, solo l'ultima modifica l'impostazione regionale attiva. Un catalogo vuoto corrisponde a un caricamento riuscito: l'impostazione regionale cambia e il contenuto sorgente viene renderizzato come fallback. Se il loader restituisce un errore, l'impostazione regionale attiva e il relativo cookie rimangono invariati. ## Mantieni l'impostazione regionale [#persistence] Nel browser, l'impostazione regionale attiva viene memorizzata in un cookie di sessione valido per l'intero percorso denominato `generaltranslation.locale`. Quando `locale` viene omesso da [`createGT()`](/docs/vue/reference/functions/create-gt), questo cookie ha la precedenza su `defaultLocale`. Imposta `localeCookieName` quando l'app deve condividere un altro cookie con un router o un server: ```ts createGT({ defaultLocale: 'en', localeCookieName: 'my-app.locale', loadTranslations, }); ``` Usa [`useSetLocale()`](/docs/vue/reference/composables/use-set-locale) anziché scrivere direttamente il cookie. I browser non generano un evento reattivo quando i cookie cambiano, quindi una scrittura esterna non attiva automaticamente il rendering di Vue. ## Scegli il cambio reattivo o con ricaricamento [#runtime-mode] La modalità di inizializzazione determina cosa accade dopo la modifica del cookie: * [`createGT()`](/docs/vue/reference/functions/create-gt) carica il catalogo e aggiorna i consumer reattivi senza ricaricare la pagina. * [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) scrive il cookie e ricarica il documento, in modo che le chiamate a [`t()`](/docs/vue/reference/functions/t) a livello di modulo vengano eseguite nuovamente dopo il precaricamento della nuova impostazione regionale. L'inizializzatore SPA accetta `locales` e ricorre a `defaultLocale` quando un'impostazione regionale salvata o richiesta non è supportata. Segui [Sviluppare con le traduzioni per SPA](/docs/vue/guides/developing-spa-translations) quando la traduzione a livello di modulo richiede questo comportamento. Per il rendering lato server, determina l'impostazione regionale della richiesta sul server e passala esplicitamente a [`createGT()`](/docs/vue/reference/functions/create-gt). Il valore esplicito prevale su un cookie del browser obsoleto e mantiene allineate l'impostazione regionale del rendering lato server e quella dell'idratazione. ## Next steps - /docs/vue/guides/configuring - /docs/vue/guides/storing-translations - /docs/vue/guides/developing-spa-translations - /docs/vue/guides/translating-content