Babel принимает forEach, хотя и не поддерживается в IE11 - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь перенести код ES6 для поддержки браузерами, такими как IE 11. Я использую веб-пакет с Gulp через плагин webpack-stream:

/ gulpfile.js

...
const webpack = require('webpack-stream');

gulp.task('js_webpack', ['jest'], function() {
    return gulp.src('./src/js/**/*.js')
        .pipe(webpack(require('./webpack.config.js')))
        .pipe(gulp.dest('./dist/js'));
});
...

/ webpack.config.js

const path = require('path');

module.exports = {
    entry: {
        "course-search": './src/js/course-search.bundle.js',
        ...
    },
    output: {
        filename: '[name].bundle.js',
        path: path.resolve(__dirname, 'dist/js')
    },
    module: {
        rules: [{
            test: /\.js$/,
            exclude: /node_modules/,
            use: {
                loader: "babel-loader"
            }
        }],
    },
    mode: 'development',
    devtool: 'inline-source-map'
}

Все это прекрасно работает. Все объединяется и переносится вниз. Однако forEach, который не поддерживается в IE , находится в сгенерированных файлах JS.

Итак, я пытаюсь установить список приемлемых целевых браузеров:

/. Browserslistrc

> 1%
ie >= 11
ios 7

Разве это не правильно? Почему он все еще принимает forEach в dist / files?

Если это помогает, вот также мой конфигурационный файл babel:

/. Babelrc

{
    "presets": [
        "@babel/preset-env"
    ]
}
...