# gt-react: General Translation React SDK: Il componente T URL: https://generaltranslation.com/it/docs/react/guides/t.mdx --- title: Il componente T description: Come internazionalizzare i componenti JSX con il componente T --- {/* GENERATO AUTOMATICAMENTE: non modificare direttamente. Modifica invece il template in content/docs-templates/. */} Il [componente ``](/docs/react/api/components/t) è lo strumento principale per internazionalizzare i contenuti JSX nella tua applicazione React. Racchiude gli elementi JSX e li traduce automaticamente in base all'impostazione regionale dell'utente. **Suggerimento:** con [l'iniezione automatica di JSX](/docs/cli/features/auto-jsx-injection) abilitata, il compilatore può racchiudere automaticamente il tuo JSX in componenti di traduzione durante la fase di build. Nella maggior parte dei casi, potresti non dover aggiungere `` manualmente. L'uso manuale di `` resta comunque utile quando hai bisogno di un controllo più granulare, ad esempio per impostare un `id` o un `context` specifico. ## Guida rapida Trasforma qualsiasi contenuto JSX statico racchiudendolo in [``](/docs/react/api/components/t): ```jsx import { T } from 'gt-react'; // Prima function Greeting() { return

Hello, world!

; } // Dopo function Greeting() { return

Hello, world!

; } ``` Per i contenuti dinamici all'interno di [``](/docs/react/api/components/t), usa i [componenti variabili](/docs/react/guides/variables) e i [componenti condizionali](/docs/react/guides/branches). ## Utilizzo di base Il [componente ``](/docs/react/api/components/t) accetta qualsiasi contenuto JSX come elemento figlio: ```jsx // Testo semplice Welcome to our app // Elementi HTML

Page Title

// JSX annidato complesso
Important: Please read carefully.
``` ## Opzioni di configurazione ### Aggiungere il contesto Fornisci il contesto di traduzione per i termini ambigui: ```jsx Click the toast to dismiss ``` ## Quando usare T Usa [``](/docs/react/api/components/t) **solo per contenuti statici**: ```jsx // ✅ Il contenuto statico funziona

Welcome to our site

// ❌ Il contenuto dinamico causa errori

Hello {username}

Today is {new Date()}

// ✅ Usa i componenti variabili per il contenuto dinamico

Hello {username}

``` I componenti variabili e condizionali sono progettati per funzionare all'interno di [``](/docs/react/api/components/t) con contenuti dinamici. Per maggiori dettagli, consulta le guide [Componenti variabili](/docs/react/guides/variables) e [Componenti condizionali](/docs/react/guides/branches). ## Esempi ### Elementi semplici ```jsx // Testo semplice Hello, world! // Pulsante con testo // Intestazione con stile

Welcome

``` ### Componenti complessi ```jsx // Menu di navigazione // Messaggio di avviso
Your session expires in 5 minutes
``` ### Con le variabili Puoi usare componenti per le variabili per la formattazione localizzata. ```jsx // Combinazione di testo statico con valori dinamici

Welcome back, {user.name}!

You have {user.friends.length} friends online

Your birthday is {user.birthday}

Your balance is {user.balance}

``` Scopri di più sul [componente ``](/docs/react/api/components/var) nella [guida ai componenti variabili](/docs/react/guides/variables). ## Setup di produzione ### Processo di build Integra la traduzione nella tua pipeline di build: ```json title="package.json" { "scripts": { "build": "npx gt translate && <...YOUR_BUILD_COMMAND...>" } } ``` ### Comportamento in sviluppo e in produzione * **Sviluppo**: Con una chiave API di sviluppo, le traduzioni vengono generate su richiesta quando i componenti vengono renderizzati. Vedrai la traduzione in tempo reale mentre sviluppi. * **Produzione**: Tutte le traduzioni vengono precompilate durante la fase di build e saranno visibili quando l'applicazione sarà online. Imposta la chiave API di sviluppo nel tuo ambiente per abilitare la traduzione in tempo reale durante lo sviluppo. Puoi crearne una nella Dashboard, in [API Keys](https://dash.generaltranslation.com/en-US/project/api-keys). ### Considerazioni sulla privacy Il contenuto dei componenti [``](/docs/react/api/components/t) viene inviato all'API di GT per la traduzione. Per i dati sensibili, usa i [componenti variabili](/docs/react/guides/variables) per mantenere in locale le informazioni private: ```jsx // Sicuro - i dati sensibili rimangono locali Welcome back, {username} ``` ## Quanto racchiudere in un singolo `` Racchiudi **blocchi di contenuto logici** — contenuti che un traduttore leggerebbe e tradurrebbe naturalmente come un unico insieme. ```jsx // ✅ Corretto — raggruppare contenuti correlati fornisce ai traduttori il contesto completo

Welcome to Our Platform

Get started in minutes with our simple setup process.

// ✅ Corretto — ogni card è un'unità indipendente {features.map((feature) => (

{feature.title}

{feature.description}

))} // ❌ Troppo frammentato — spezza la traduzione e perde il contesto

Welcome to Our Platform

Get started in minutes with our simple setup process.

// ❌ Troppo ampio — racchiudere l'intera pagina rende la manutenzione più difficile {/* ...centinaia di righe di JSX... */} ``` **Regola generale:** se il testo è visivamente o semanticamente correlato, racchiudilo in un unico ``. Suddividilo solo quando il contenuto è davvero indipendente (ad esempio, un'intestazione rispetto a un piè di pagina). Racchiudere più contenuto in un singolo `` offre ai traduttori più contesto, producendo traduzioni più naturali: alcune lingue ristrutturano le frasi o richiedono riferimenti al contenuto circostante. ## Problemi comuni ### Limiti dei componenti [``](/docs/react/api/components/t) traduce solo i figli diretti, non il contenuto all'interno di altri componenti: ```jsx // ❌ Sbagliato - il contenuto all'interno dei componenti non verrà tradotto function MyComponent() { return

Questo non verrà tradotto

; }

Questo verrà tradotto

{/* Il contenuto interno non verrà tradotto */}
// ✅ Corretto - racchiudi ogni componente singolarmente function MyComponent() { return

Questo verrà tradotto

; }

Questo verrà tradotto

``` ### Annidamento dei componenti T ```jsx // ❌ Non annidare i componenti Hello world {/* Non farlo */} ``` ### Errori relativi ai contenuti dinamici La CLI segnala un errore in presenza di contenuti dinamici in [``](/docs/react/api/components/t). Racchiudi i valori dinamici nei componenti variabili: ```jsx // ❌ Errato - il contenuto dinamico causa errori

Hello {username}

// ✅ Corretto - usa i componenti variabili

Hello {username}

``` Consulta la [guida ai componenti variabili](/docs/react/guides/variables) per gestire i valori dinamici e la [guida ai componenti condizionali](/docs/react/guides/branches) per gestire i contenuti condizionali. ## Prossimi passaggi **Guarda come funziona:** Dai un'occhiata all'[app di esempio sui concetti di base del componente ``](https://github.com/gt-examples/t-component-basics) per una demo funzionante — [anteprima live](https://t-component-basics.generaltranslation.dev). * [Guida ai componenti variabili](/docs/react/guides/variables) - Gestisci contenuti dinamici nelle traduzioni in JSX * [Guida ai componenti condizionali](/docs/react/guides/branches) - Aggiungi logica condizionale alle tue traduzioni