skip to Main Content

When creating the SRC folder and inserting the appropriate items, react-native started giving this error:

AppEntry.js:1 Uncaught Error: Cannot find module '../../App'

Uncaught ReferenceError: process is not defined

index.js:1 ./node_modules/expo/AppEntry.js:3
Module not found: Can't resolve '../../App'
  1 | import registerRootComponent from 'expo/build/launch/registerRootComponent';
  2 |
> 3 | import App from '../../App';
  4 |
  5 | registerRootComponent(App);

From what I understand it is not finding the App with the path which is in "AppEntry.js".

However, AppEntry is by default in package.json:

"main": "node_modules/expo/AppEntry.js"

What should I do to fix?

enter image description here

2

Answers


  1. You have moved your App.js or App.ts from root folder to ‘src’ so in appEntry you need to update your path from:

    import App from '../../App';

    To:
    import App from '../../src/App';

    Or you just can move back App.tsx to root folder

    enter image description here

    Login or Signup to reply.
  2. You can set the initializer path using the "main" property in package.json (note if you do so you need to write something like this.

    import { registerRootComponent } from "expo";
    
    
    import App from "./App";
    export default registerRootComponent(App);
    

    An example is https://github.com/trajano/spring-cloud-demo/blob/83887627274afa1970b5a0861e7c7d2e27efecce/expo-app/src/init/index.ts#L10-L13

    with the package.json line https://github.com/trajano/spring-cloud-demo/blob/rework/expo-app/package.json#L5

    Doing this gives you more flexibility, and I generally don’t see the downside to doing it.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search