# gt-react: General Translation React SDK: Compilatore URL: https://generaltranslation.com/it/docs/react/concepts/compiler.mdx --- title: Compilatore description: Come la CLI `gt` elabora i tuoi file di origine React --- La CLI `gt` include un compilatore che analizza i tuoi file di origine React nella fase di build. Rileva gli errori di traduzione più comuni e può anche automatizzare il wrapping del JSX nei componenti di traduzione. ## Funzionalità ### Rilevamento dei contenuti dinamici Rileva contenuti dinamici non racchiusi nei componenti di traduzione: ```jsx // ❌ Non valido - contenuto dinamico non racchiuso Hello {userName} // ✅ Valido - contenuto dinamico racchiuso nel componente variabile Hello {userName} ``` ### Validazione delle chiamate di funzione Rileva gli argomenti non letterali passati alle funzioni di traduzione: ```jsx const gt = useGT(); // ❌ Non valido - template literal e concatenazione gt(`Hello ${name}`) gt("Hello " + name) // ✅ Valido - stringhe letterali con sostituzione di variabili gt("Hello, {name}!", { name }) ``` ## Iniezione automatica di JSX Con l'iniezione automatica di JSX abilitata, il compilatore racchiude automaticamente il testo JSX traducibile nei componenti di traduzione, quindi non devi aggiungere manualmente i componenti `` intorno a ogni porzione di testo. ### Attivare l'iniezione automatica di JSX Aggiungi `enableAutoJsxInjection` al tuo `gt.config.json`: ```json title="gt.config.json" { "files": { "gt": { "output": "public/_gt/[locale].json", "parsingFlags": { "enableAutoJsxInjection": true } } } } ``` ### Prima e dopo Senza iniezione automatica di JSX, devi racchiudere il testo manualmente: ```jsx import { T } from 'gt-react'; function Welcome() { return (

Welcome to our app

); } ``` Con iniezione automatica di JSX attivata, scrivi JSX normale e al resto pensa il compilatore: ```jsx function Welcome() { return

Welcome to our app

; } ``` Il compilatore rileva il testo traducibile e lo avvolge automaticamente quando esegui `npx gt translate`. ### Cosa rispetta il compilatore * I **componenti `` scritti dall'utente** vengono lasciati invariati — il compilatore non avvolge il tuo codice due volte * Anche **gli altri componenti GT** come ``, ``, `` e `` vengono rispettati * Gli **attributi testuali** (ad esempio `placeholder`, `alt`) non vengono modificati — vengono racchiusi solo gli elementi figli JSX * I **contenuti non testuali** come numeri e booleani vengono ignorati