# General Translation React SDKs (gt-react, gt-next, gt-react-native): Dépannage de React Native URL: https://generaltranslation.com/fr/docs/react/react-native/troubleshooting.mdx --- title: Dépannage de React Native description: Comment diagnostiquer les problèmes de modules natifs, de polyfills, de paramètres régionaux, de fichiers de traduction et de développement dans une application React Native. related: links: - /docs/react/guides/configuring - /docs/react/guides/storing-translations - /docs/react/guides/managing-locales - /docs/react/guides/translating-jsx --- Commencez par l’erreur affichée par Metro ou l’appareil, puis vérifiez la couche de configuration concernée : liaison native, polyfills Babel, configuration des paramètres régionaux ou fichiers de traduction générés. ## Corriger le module natif [#native-module] Une erreur indiquant que `GtReactNative` est introuvable signifie que le module natif n’est pas inclus dans le binaire de l’application installée. ### Expo Expo Go ne peut pas charger de modules natifs personnalisés. Créez et exécutez un build de développement : ```bash npx expo run:ios # ou npx expo run:android ``` Après avoir ajouté ou mis à jour `gt-react-native`, reconstruisez le client de développement. Redémarrer Metro seul ne met pas à jour les modules natifs d’un binaire existant. ### CLI React Native Installez les pods iOS après avoir ajouté le paquet, puis recompilez l’application : ```bash cd ios pod install cd .. ``` Si le module est toujours introuvable, supprimez l’ancienne application du simulateur ou de l’appareil, puis effectuez un build natif propre. *Remarque : React Native Web ne nécessite pas le module natif. Il utilise à la place la détection du paramètre régional et le stockage du navigateur.* ## Corriger la configuration des polyfills [#polyfills] Si l’application signale des codes de langue non valides ou l’absence de l’API `Intl`, vérifiez que le [plugin Babel](/docs/react/react-native/plugin) s’exécute sur le véritable fichier d’entrée de l’application. * Expo Router utilise généralement `require.resolve('expo-router/entry')`. * Une application React Native sans Expo utilise généralement le chemin absolu vers `index.js`. * Un fichier d’entrée personnalisé doit être transmis via `entryPointFilePath`. Le plugin a besoin du paramètre régional par défaut et de chaque paramètre régional cible. Transmettez directement `locales`, transmettez `config` ou définissez `configFilePath` sur un fichier `gt.config.json` lisible. Le plugin ne charge les données de paramètres régionaux FormatJS que pour les codes de langue canoniques pris en charge ; si votre application utilise un alias personnalisé pour le routage, transmettez son code canonique au plugin. Videz le cache de transformation de Metro après avoir modifié la configuration Babel : ```bash npx expo start --clear ``` Pour une application React Native sans Expo, redémarrez Metro en réinitialisant son cache : ```bash npx react-native start --reset-cache ``` Si Babel ne peut pas s’exécuter dans votre configuration, suivez l’exemple d’importation manuelle dans la [documentation de référence du plugin](/docs/react/react-native/plugin#how-it-works). ## Générer les fichiers manquants [#missing-files] Metro résout les appels `require()` statiques avant le démarrage de l’application. Chaque fichier de traduction indiqué dans votre map [`loadTranslations`](/docs/react/reference/functions/load-translations) doit déjà exister. Générez des fichiers placeholder préremplis avec le contenu source, sans clé API : ```bash npx gt generate ``` Ou générez des fichiers traduits à l’aide des identifiants du projet : ```bash npx gt translate ``` Veillez à ce que le chemin de sortie de la CLI dans `gt.config.json` corresponde aux chemins définis dans `loadTranslations.ts`. Redémarrez Metro après avoir ajouté des fichiers qui n’existaient pas auparavant. ## Comprendre le comportement en développement [#development] Les traductions à l’exécution en développement peuvent prendre plus de temps lors de la première ouverture d’un paramètre régional, car l’application demande des traductions non mises en cache. Les builds de production doivent exécuter [`npx gt translate`](/docs/cli/reference/commands/translate) à l’avance et charger les fichiers générés localement. Si une traduction est inexacte, ajoutez du contexte au contenu ambigu : ```tsx Apple ``` La fonction de traduction [`useGT`](/docs/react/reference/hooks/use-gt) accepte la même option `$context`. Les environnements React Native côté serveur ne sont pas explicitement pris en charge. Si une build Expo Web ou React Native Web effectue le rendu sur le serveur, testez la détection du paramètre régional et le comportement du stockage dans cet environnement d’exécution avant de déployer. ## Next steps - /docs/react/guides/configuring - /docs/react/guides/storing-translations - /docs/react/guides/managing-locales - /docs/react/guides/translating-jsx