Skip to content

[babel-preset-react-native] Error with empty destructuring: babelHelpers.objectDesctructuringEmpty is not a function #13234

@leoselig

Description

@leoselig

Description

Empty destructuring operators do not work with react-native-babel-preset.

Reproduction Steps and Sample Code

Setup react-native with a custom .babelrc like this:

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

Then, somewhere in your code, perform a destructuring on a function argument like this:

export default function MyComponent({}: PropsType) {
  // ...
}

Solution

Unsure. Probably the most obvious and quick solution, is to add the missing babel helper function. Unfortunately, I'm can't get my head around how react-natives way of juggling the babel config works right now, so I cannot be certain or submit a PR.

However, as I already pointed out in #4844 (comment) I feel like the general way babel is "instrumented" by react-native tends to be more of a hack and seems to be the cause of quite a few bugs

(I'm absolutely not privileged to judge this, but I have some doubts as to whether all this is worth the performance improvements)

Additional Information

  • React Native version: 0.42.3
  • Platform: iOS
  • Development Operating System: macOS Sierra (10.12.3)
  • Dev tools: Xcode, iOS 10.3, iPhone 6 Simulator

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions