New react-native app has 'TypeError: babelHelpers.typeof is not a function' [iOS]

后端 未结 7 1869
花落未央
花落未央 2020-12-31 02:37

A new project created with the latest version of react-native throws javascript error while running(/debugging). Tested this on simulator.

[fatal][tid:main]         


        
相关标签:
7条回答
  • 2020-12-31 03:05

    I updated to the newly released react-native@0.21 and the issue went away. I am not sure if this means the root issue has been resolved since I have seen intermittent success with other "fixes".

    0 讨论(0)
  • 2020-12-31 03:06

    One issue is that if there is a .babelrc in a parent directory to your app, the packager will read that and it will cause this exact error. One way around it is to add a .babelrc file in your project:

    {
      "presets": ["react-native"]
    }
    
    0 讨论(0)
  • 2020-12-31 03:10

    Here's a comment explaining the issue:

    https://github.com/facebook/react-native/issues/4844#issuecomment-204035720

    To summarize:

    Babel presets 'stage-0' through 'stage-3' contain 'async-to-generator', which is not not necessary for react-native itself.

    The solution is to use the unofficial babel preset 'react-native-stage-0'

    Example:

    npm install babel-preset-react-native-stage-0 --save-dev
    

    .babelrc

    {
      "presets": ["react-native-stage-0"]
    }
    

    or with decorator support

    {
      "presets": ["react-native-stage-0/decorator-support"]
    }
    

    Empty cache and Restart

    watchman watch-del-all
    
    ./node_modules/react-native/packager/packager.sh start --reset-cache
    
    0 讨论(0)
  • 2020-12-31 03:11

    Solved adding babel stage-1 and react-native preset's to .babelrc in the project's root folder.

    {
      "presets": ["stage-1", "react-native"],
    }
    

    More details here: https://github.com/facebook/react-native/issues/5747

    0 讨论(0)
  • 2020-12-31 03:19

    Double check your import path/file names as they are case sensitive

    0 讨论(0)
  • 2020-12-31 03:19

    It's usually due to a 3rd party npm dependency that has .babelrc or babel es2015 preset specified in it's package.json.

    There's a fix in place: https://github.com/facebook/react-native/pull/11093

    0 讨论(0)
提交回复
热议问题