# General Translation React SDKs (gt-react, gt-next, gt-react-native): Risoluzione dei problemi di React Native URL: https://generaltranslation.com/it/docs/react/react-native/troubleshooting.mdx --- title: Risoluzione dei problemi di React Native description: Come diagnosticare problemi relativi a moduli nativi, polyfill, impostazioni regionali, file di traduzione e sviluppo in un'app React Native. related: links: - /docs/react/guides/configuring - /docs/react/guides/storing-translations - /docs/react/guides/managing-locales - /docs/react/guides/translating-jsx --- Inizia dall'errore visualizzato da Metro o dal dispositivo, quindi verifica il livello di configurazione corrispondente: collegamento nativo, polyfill Babel, configurazione delle impostazioni regionali o file di traduzione generati. ## Correggi il modulo nativo [#native-module] Un errore che indica che `GtReactNative` non è stato trovato significa che il modulo nativo non è incluso nel binario dell'app installata. ### Expo Expo Go non può caricare moduli nativi personalizzati. Crea ed esegui una build di sviluppo: ```bash npx expo run:ios # oppure npx expo run:android ``` Dopo aver aggiunto o aggiornato `gt-react-native`, ricompila il client di sviluppo. Il solo riavvio di Metro non aggiorna i moduli nativi in un binario esistente. ### React Native CLI Dopo aver aggiunto il package, installa i pod iOS e ricompila l'app: ```bash cd ios pod install cd .. ``` Se il modulo continua a non essere disponibile, rimuovi l'app precedente dal simulatore o dal dispositivo ed esegui una build nativa pulita. *Nota: React Native Web non richiede il modulo nativo. Utilizza invece il rilevamento dell'impostazione regionale del browser e l'archiviazione.* ## Correggere la configurazione del polyfill [#polyfills] Se l'app segnala codici di impostazione regionale non validi o l'assenza dell'API `Intl`, verifica che il [plugin Babel](/docs/react/react-native/plugin) venga eseguito sul file di ingresso effettivamente usato dall'app. * Expo Router usa normalmente `require.resolve('expo-router/entry')`. * Un'app React Native bare usa normalmente il percorso assoluto di `index.js`. * Un file di ingresso personalizzato deve essere specificato tramite `entryPointFilePath`. Il plugin richiede l'impostazione regionale predefinita e tutte le impostazioni regionali di destinazione. Passa direttamente `locales`, passa `config` oppure imposta `configFilePath` su un file `gt.config.json` leggibile. Il plugin carica i dati delle impostazioni regionali di FormatJS solo per i codici di impostazione regionale canonici supportati; se l'app instrada usando un alias personalizzato, passa il relativo codice canonico al plugin. Svuota la cache di trasformazione di Metro dopo aver modificato la configurazione di Babel: ```bash npx expo start --clear ``` Per un'app React Native bare, riavvia Metro con la cache reimpostata: ```bash npx react-native start --reset-cache ``` Se Babel non riesce a essere eseguito nella tua configurazione, segui l'esempio di importazione manuale nel [riferimento del plugin](/docs/react/react-native/plugin#how-it-works). ## Generare i file mancanti [#missing-files] Metro risolve le chiamate statiche a `require()` prima dell'avvio dell'app. Tutti i file di traduzione indicati nella mappa [`loadTranslations`](/docs/react/reference/functions/load-translations) devono già esistere. Genera file placeholder contenenti il testo sorgente senza una chiave API: ```bash npx gt generate ``` Oppure genera file tradotti utilizzando le credenziali del progetto: ```bash npx gt translate ``` Mantieni allineato il percorso di output della CLI in `gt.config.json` con i percorsi in `loadTranslations.ts`. Riavvia Metro dopo aver aggiunto file che prima non esistevano. ## Comprendere il comportamento in sviluppo [#development] La prima volta che viene aperta un'impostazione regionale, le traduzioni runtime in sviluppo potrebbero richiedere più tempo perché l'app richiede traduzioni non presenti nella cache. Le build di produzione devono eseguire in anticipo [`npx gt translate`](/docs/cli/reference/commands/translate) e caricare localmente i file generati. Se una traduzione non è accurata, aggiungi contesto ai contenuti ambigui: ```tsx Apple ``` La funzione di traduzione [`useGT`](/docs/react/reference/hooks/use-gt) accetta la stessa opzione `$context`. Gli ambienti React Native lato server non sono esplicitamente supportati. Se una build Expo Web o React Native Web viene renderizzata sul server, testa il rilevamento dell'impostazione regionale e il comportamento dell'archiviazione in tale runtime prima di distribuire l'applicazione. ## Next steps - /docs/react/guides/configuring - /docs/react/guides/storing-translations - /docs/react/guides/managing-locales - /docs/react/guides/translating-jsx