Я нашел способ, и вот как мои настройки выглядят как текущие.
.babelr c "useBuiltIns": "entry" делает так, чтобы вы заполняли (и вспомогательные методы) тоже?) вставляются только по запросу. Другими словами, когда вы вызываете «импорт» вверху файла. Это позволяет мне создавать файл полифайла. js, в котором нет ничего, кроме import "core- js"; , который превращается в файл гораздо большего размера со всеми необходимыми мне полифилами.
{
"presets": [
[
"@babel/preset-env",
{
"corejs": "3.6.4",
"useBuiltIns": "entry",
"targets": {
"ie": "11"
}
}
],
"@babel/preset-react"
],
"plugins": [
"@babel/plugin-proposal-class-properties",
"@babel/transform-runtime"
],
"sourceType": "unambiguous"
}
конфигурация webpack для этих файлов выглядит следующим образом (коллекция экспорта в конечном итоге назначается для module.exports).
glob
.sync(PATH)
.forEach((file) => {
let config = {
entry: file,
output: {
path: path.resolve(__dirname),
filename: file,
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader'
}],
}
};
exports.push(config)
});
не нужно говорить, что polyfill. js это первый скрипт, вызванный в моем html.