# General Translation React SDKs (gt-react, gt-next): Salvare le traduzioni localmente URL: https://generaltranslation.com/it/docs/react/guides/storing-translations.mdx --- title: Salvare le traduzioni localmente description: Come includere nel bundle della tua app le traduzioni di General Translation invece di caricarle dalla CDN, in React, Next.js, TanStack Start e React Native. related: links: - /docs/react/guides/configuring - /docs/react/guides/developing-spa-translations - /docs/react/guides/managing-locales - /docs/react/guides/translating-jsx --- Per impostazione predefinita, General Translation carica le traduzioni dalla propria CDN a runtime. In alternativa, puoi generare file di traduzione, includerli nel bundle della tua app e caricarli direttamente. In questo modo elimini la dipendenza dalla CDN a runtime, ma per aggiornare le traduzioni dovrai effettuare un nuovo deploy. ## Configura un percorso di output locale [#configure] In `gt.config.json`, imposta il percorso di output del file `gt` su un percorso nel codice sorgente, usando il segnaposto `[locale]`. Questo vale per tutti i framework. ```json title="gt.config.json" { "defaultLocale": "en", "locales": ["es", "fr"], "files": { "gt": { "output": "src/_gt/[locale].json" } } } ``` ## Genera i file [#generate] Esegui la CLI per tradurre i contenuti e salvare un file per ogni impostazione regionale in quel percorso. ```bash npx gt translate ``` Aggiungilo al processo di build, così i file restano aggiornati — per esempio, `"build": "npx gt translate && vite build"` (oppure `next build`, `expo export` e così via). ## Caricale nella tua app [#load] Fornisci un callback [`loadTranslations`](/docs/react/reference/functions/load-translations) che importi il file per una determinata impostazione regionale. Il modo in cui lo registri dipende dal framework. Passa `loadTranslations` alla chiamata di inizializzazione. ```tsx title="src/routes/root.tsx" import { initializeGT } from 'gt-react'; import gtConfig from '../../gt.config.json'; const loadTranslations = (locale: string) => import(`../_gt/${locale}.json`).then((m) => m.default); initializeGT({ ...gtConfig, loadTranslations }); ``` Crea un file `loadTranslations.ts` nella radice del progetto. Il plugin `withGTConfig` lo rileva automaticamente (oppure imposta `loadTranslationsPath` in modo esplicito). ```ts title="loadTranslations.ts" export default async function loadTranslations(locale: string) { const t = await import(`./_gt/${locale}.json`); return t.default; } ``` ```ts title="next.config.ts" import { withGTConfig } from 'gt-next/config'; export default withGTConfig(nextConfig, { loadTranslationsPath: './loadTranslations.ts' }); ``` Passa `loadTranslations` alla chiamata di inizializzazione. ```tsx import { initializeGT } from 'gt-tanstack-start'; import gtConfig from '../gt.config.json'; const loadTranslations = (locale: string) => import(`./_gt/${locale}.json`).then((m) => m.default); initializeGT({ ...gtConfig, loadTranslations }); ``` Passa `loadTranslations` alla chiamata di inizializzazione. ```tsx import { initializeGT } from 'gt-react-native'; import gtConfig from '../gt.config.json'; const loadTranslations = (locale: string) => import(`./_gt/${locale}.json`).then((m) => m.default); initializeGT({ ...gtConfig, loadTranslations }); ``` Con un loader locale configurato, le traduzioni vengono lette dal tuo bundle e non viene effettuata alcuna richiesta alla CDN. Per tornare al caricamento tramite CDN, rimuovi il loader e fornisci invece un `projectId` (vedi [Configure General Translation](/docs/react/guides/configuring#delivery)). ## Next steps - /docs/react/guides/configuring - /docs/react/guides/developing-spa-translations - /docs/react/guides/managing-locales - /docs/react/guides/translating-jsx