React-native: undefined is not a function (evaluating 'babelHelpers.objectDestructuringEmpty(_ref)')

Created on 8 Aug 2018  路  7Comments  路  Source: facebook/react-native

Environment

OS: macOS High Sierra 10.13.6
Node: 9.11.1
Yarn: 1.7.0
npm: 6.1.0
Watchman: 4.9.0
Xcode: Xcode 9.4.1 Build version 9F2000
Android Studio: 3.1 AI-173.4819257

Packages: (wanted => installed)
react: 16.3.0-alpha.3 => 16.3.0-alpha.3
react-native: 0.54.2 => 0.54.2

Description

In Emulator is fine but in the mobile device is crashing.

capture _2018-08-07-19-00-35

TypeError: undefined is not a function (evaluating 'babelHelpers.objectDestructuringEmpty(_ref)')

             This error is located at:
                 in Connect(Accepted) (at navigationStore.js:319)
                 in Wrapped (at SceneView.js:31)
                 in SceneView (at CardStack.js:412)
                 in RCTView (at View.js:78)
                 in View (at CardStack.js:411)
                 in RCTView (at View.js:78)
                 in View (at CardStack.js:410)
                 in RCTView (at View.js:78)
                 in View (at createAnimatedComponent.js:147)
                 in AnimatedComponent (at Card.js:26)
                 in Card (at PointerEventsContainer.js:55)
                 in Container (at CardStack.js:454)
                 in RCTView (at View.js:78)
                 in View (at CardStack.js:383)
                 in RCTView (at View.js:78)
                 in View (at CardStack.js:382)
                 in CardStack (at CardStackTransitioner.js:97)
                 in RCTView (at View.js:78)
                 in View (at Transitioner.js:192)
                 in Transitioner (at CardStackTransitioner.js:49)
                 in CardStackTransitioner (at StackNavigator.js:60)
                 in Unknown (at createNavigator.js:52)
                 in Navigator (at createNavigationContainer.js:210)
                 in NavigationContainer (at SceneView.js:31)
                 in SceneView (at CardStack.js:412)
                 in RCTView (at View.js:78)
                 in View (at CardStack.js:411)
                 in RCTView (at View.js:78)
                 in View (at CardStack.js:410)
                 in RCTView (at View.js:78)
                 in View (at createAnimatedComponent.js:147)
                 in AnimatedComponent (at Card.js:26)
                 in Card (at PointerEventsContainer.js:55)
                 in Container (at CardStack.js:454)
                 in RCTView (at View.js:78)
                 in View (at CardStack.js:383)
                 in RCTView (at View.js:78)
                 in View (at CardStack.js:382)
                 in CardStack (at CardStackTransitioner.js:97)
                 in RCTView (at View.js:78)
                 in View (at Transitioner.js:192)
                 in Transitioner (at CardStackTransitioner.js:49)
                 in CardStackTransitioner (at StackNavigator.js:60)
                 in Unknown (at createNavigator.js:52)
                 in Navigator (at createNavigationContainer.js:210)
                 in NavigationContainer (at Router.js:70)
                 in App (at Router.js:91)
                 in Router (at Router.js:52)
                 in RouterComponent (at App.js:50)
                 in RCTView (at View.js:78)
                 in View (at index.js:572)
                 in RCTView (at View.js:78)
                 in View (at index.js:559)
                 in Drawer (at App.js:39)
                 in Provider (at App.js:38)
                 in App (at renderApplication.js:35)
                 in RCTView (at View.js:78)
                 in View (at AppContainer.js:102)
                 in RCTView (at View.js:78)
                 in View (at AppContainer.js:122)
                 in AppContainer (at renderApplication.js:34)
Locked

Most helpful comment

@hramos

The issue arises when you add an empty destructuring object, i.e. const {} = this.props.

Minimal sample repo: https://github.com/Jakst/babel-destructuring-crash

Direct link to apk (if you trust me 馃槈) https://exp-shell-app-assets.s3.us-west-1.amazonaws.com/android/%40jakst/babel-fix-c63bd081b41fe21c1b0085ec05aaad19-signed.apk

Note that the problem only shows itself in production build, not while developing.

All 7 comments

Thanks for filing the issue. It'd be really helpful to get a minimal repro, as it looks like the only way to reproduce this issue is for someone to run your particular app on a device. This repo is not the best place to ask for help troubleshooting this type of issue, I'm afraid.

@hramos thanks! I Just resolved. I'm sorry.

@hramos

The issue arises when you add an empty destructuring object, i.e. const {} = this.props.

Minimal sample repo: https://github.com/Jakst/babel-destructuring-crash

Direct link to apk (if you trust me 馃槈) https://exp-shell-app-assets.s3.us-west-1.amazonaws.com/android/%40jakst/babel-fix-c63bd081b41fe21c1b0085ec05aaad19-signed.apk

Note that the problem only shows itself in production build, not while developing.

Hey I am having this issue now, i can see it in production in my logcat, how can I fix it?
repo: and I think I dont have empty destructuring objects, also i can log into the app nicely admin, admin, but after when i would move to inside views it happens

I have the same issue on release apk. Only on release apk. Debug apk works without an issue.
Yeah, It's similar to @benonymus 's situation. Works on the login view, and very first views. Only crash after firebase login.

Got it. I had an empty destructuring on a function parameter. @benonymus ;) Maybe yours too.

SomeComponent = ({}) => <View>... </View>

This isssue is marked as closed but it still happen for me using react-native 0.56 and indeed the reproducer is available. Is it not something the RN team plan to close?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

josev55 picture josev55  路  3Comments

lazywei picture lazywei  路  3Comments

anchetaWern picture anchetaWern  路  3Comments

grabbou picture grabbou  路  3Comments

phongyewtong picture phongyewtong  路  3Comments