Je reçois une erreur dans React Native en disant que cela ne peut pas résoudre un module. Cela signifie qu'un certain dossier n'existe pas mais que le chemin n'est pas précis. Il me dit que Directory /Users/user/Desktop/RNApp/app/app/containers
n'existe pas. Je n'ai aucune idée d'où vient cette deuxième application. Mon répertoire ressemble à ceci
Voici comment j'exporte mes composants de conteneur dans app/containers/index.js
export RNAppNavigator from './Navigator/RNAppNavigator'
export SplashContainer from './Splash/SplashContainer'
export AppContainer from './App/AppContainer'
Je devrais donc pouvoir les importer comme import {AppContainer} from '~/containers
correct? Je ne reçois pas de problème avec d'autres composants. Juste la AppContainer
.
Merci!
react-native start --reset-cache
a résolu le problème. https://github.com/facebook/react-native/issues/1924
En fonction de la structure de votre dossier, essayez d'importer comme ceci dans index.js:
import { AppContainer } from './App/AppContainer';
Si vous utilisez une exportation nommée, c'est si vous faites:
export class AppContainer [...]
Si vous utilisez une exportation par défaut, telle que:
export default class AppContainer [...]
La déstructuration de l'objet échouera. Vous devez faire à la place:
import AppContainer from './App/AppContainer';
Assurez-vous que le module est défini dans le package.json, utilisez npm install
, puis essayez react-native link
J'ai eu exactement le même problème - le correctif était babel-preset-react-native-stage-0
au lieu de babel-preset-react-native
.
Si vous rencontrez des problèmes similaires avec des composants purs ou des classes, assurez-vous que vous utilisez l'extension .js
au lieu de .jsx
.
J'ai pu résoudre ce problème en ajoutant une extension de fichier '.js'. J'utilisais Intellij et créais un fichier js, mais l'extension de fichier ne l'était pas. Quand j'ai renommé un réfracteur et que j'ai changé mon composant de 'List' en 'List.js', je savais comment le résoudre.
Matériel -> Effacer tout le contenu et tous les paramètres
Il semble que votre erreur provienne du fichier index.js externe, pas de celui-ci. Importez-vous celui-ci en tant que './app/containers'? parce qu'il devrait juste être './containers'
Pour moi, en utilisant expo , il me suffisait de redémarrer expo. ctrl + c
et yarn start
ou expo start
et l'exécution sur le simulateur ios ou votre appareil, selon le test effectué.