Sotto il cofano, il babel-polyfill
utilizza un progetto chiamato core-js (con alcune personalizzazioni naturalmente). Si espone una CommonJS API, quindi supponendo che si sta transpiling a CommonJS (comportamento predefinito quando si utilizza preset-es2015), si può semplicemente utilizzare che invece:
// This pollutes the global namespace. May conflict with
// any real Symbol implementations in the future
import "core-js/es6/symbol";
// Namespace-safe Symbol import
import symbol from "core-js/es6/symbol";
E 'importante con questo approccio che si utilizza un bundler di qualche tipo (Browserify, Webpack, ecc.), Perché core-js è costituito da un lotto di moduli più piccoli e può causare molte richieste HTTP non necessarie.