Babel, al suo interno, fa una sola cosa: converte la sintassi da una forma all'altra.
Alcune delle trasformazioni della sintassi di Babel introducono dipendenze dalla funzionalità della libreria ES6. Essa non si preoccupa di come tale funzionalità arrivato perché:
- Il sistema potrebbe già fornire
- L'utente potrebbe solo voglia di caricare parti specifiche di una libreria
- Ci sono molte polyfills e la l'utente potrebbe avere uno specifico che desidera utilizzare.
È compito degli sviluppatori garantire che il codice transpiled sia in esecuzione in un ambiente in cui tutte le funzioni di cui necessita effettivamente esistano.
- Babel dovrebbe funzionare bene con
es6-shim
se si desidera continuare a utilizzarlo.
Babel espone anche babel/polyfill
come un modo semplice morto per caricare un polyfill, che carica core-js
, un'altra polyfill come es6-shim
. Basta:
require('babel/polyfill');