Closed
Description
Is this a bug report?
yes
Did you try recovering your dependencies?
yep
Which terms did you search for in User Guide?
I searched through the babel-preset-react-app documentation and source looking for config options etc
Environment
Environment:
OS: macOS High Sierra 10.13.4
Node: 10.9.0
Yarn: 1.9.4
npm: 6.2.0
Watchman: Not Found
Xcode: Not Found
Android Studio: Not Found
Packages: (wanted => installed)
react: ^16.5.1 => 16.5.1
react-dom: ^16.5.1 => 16.5.1
Steps to Reproduce
demonstration: https://github.com/3stacks/but-why
- Clone repository
- yarn install
- yarn build
- Go to build/static/js/main.xxx.js
- Search for "Object.values"
Expected Behavior
It should be transpiling es2017 features. Or if it doesn't by default, it should listen to my browserslist query and support the version of IE I defined, therefore transpiling object.values
Actual Behavior
It spat out Object.values in the built verison.
Activity
gaearon commentedon Sep 14, 2018
A Babel preset isn't expected to fill in runtime features. It's not even possible to do reliably automatically unless you always bring in a polyfill.
It's meant to provide support for syntax. It's on you to choose the polyfills for your environment.
3stacks commentedon Sep 14, 2018
Thanks for the info, is this what I'm looking for? https://babeljs.io/docs/en/babel-plugin-transform-runtime
gaearon commentedon Sep 14, 2018
Stuff like this is not reliable. For example
If you need to polyfill, do it by importing a polyfill — not via a transform.
3stacks commentedon Sep 14, 2018
Oh right, gotcha. Thanks for pointing me in the right direction