I mentioned on Twitter that I was moving from es6-shim
to babel
. Someone else mentioned:
the shims are still needed even with babel. they fix broken builtins, ones babel's output uses.
So:
Does babel need es6-shim or similar?
If it does, why doesn't babel require
these things as a dependency?
Answers with references preferred over 'yes / no' with no supporting arguments!
Babel, at its core, does a single thing: convert syntax from one form to another.
Some of Babel's syntax transformations introduce dependencies on ES6 library functionality. It doesn't concern itself with how that functionality got there because:
It is the developers job to ensure that the transpiled code is running in an environment where all the functions it needs actually exist.
es6-shim
if you'd like to keep using it.Babel also exposes babel/polyfill
as a dead simple way to load a polyfill, which loads core-js
, another polyfill like es6-shim
. Just:
require('babel/polyfill');