# 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
Docs index: https://generaltranslation.com/llms.txt
Description: Come diagnosticare problemi relativi a moduli nativi, polyfill, impostazioni regionali, file di traduzione e sviluppo in un'app React Native.

Inizia dall&#39;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&#39;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&#39;app:

```bash
cd ios
pod install
cd ..
```

Se il modulo continua a non essere disponibile, rimuovi l&#39;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&#39;impostazione regionale del browser e l&#39;archiviazione.*

## Correggere la configurazione del polyfill [#polyfills]

Se l&#39;app segnala codici di impostazione regionale non validi o l&#39;assenza dell&#39;API `Intl`, verifica che il [plugin Babel](/docs/react/react-native/plugin) venga eseguito sul file di ingresso effettivamente usato dall&#39;app.

* Expo Router usa normalmente `require.resolve('expo-router/entry')`.
* Un&#39;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&#39;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&#39;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&#39;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&#39;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&#39;avvio dell&#39;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&#39;impostazione regionale, le traduzioni runtime in sviluppo potrebbero richiedere più tempo perché l&#39;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
<T $context="the technology company">Apple</T>
```

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&#39;impostazione regionale e il comportamento dell&#39;archiviazione in tale runtime prima di distribuire l&#39;applicazione.

## Next steps

- /docs/react/guides/configuring
- /docs/react/guides/storing-translations
- /docs/react/guides/managing-locales
- /docs/react/guides/translating-jsx

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
