Получение Babel 6 для работы с IE8 (через. Gulp / Webpack)
У меня Babel 6 отлично работает с Gulp и Webpack. Теперь мне нужно заполнить его, чтобы получить поддержку IE8.
Я установил babel-polyfill, но не могу заставить его работать, и документы и Google не помогли до сих пор.
Моя задача Gulp (включая конфигурацию Webpack):
gulp.task('webpack', function(callback) {
var webpackConfig = {
context: __dirname + '../../../js',
entry: {
homepage: [
'babel-polyfill',
'./public/homepage/homepage.js'
]
},
output: {
path: __dirname + '../../../dist/public/scripts/',
filename: '[name].bundle.js'
},
module: {
loaders: [
{
loader: 'babel-loader',
test: /\.js$/, // Only run .js files through Babel
include: /js/, // Only include the /js dir
query: {
//plugins: ['transform-runtime'], // Disabled pending fix to https://github.com/babel/babel/issues/2954
presets: ['es2015'],//, 'stage-0'
}
}
]
}
};
webpack(webpackConfig, function(err, stats) {
if (err) {
throw new gutil.PluginError('webpack', err);
}
gutil.log('[webpack]', stats.toString({
// output options
}));
callback();
});
});
Из документов (https://babeljs.io/docs/usage/polyfill/):
Использование в Node / Browserify / Webpack
Чтобы включить полифил, вам необходимо указать его в верхней части точки входа в> ваше приложение.
требуют ( "Вавилонская-polyfill");
Использование в браузере
Доступно из файла dist / polyfill.js в выпуске babel-polyfill npm. Это должно быть включено до всего вашего скомпилированного кода Babel. Вы можете либо добавить его к скомпилированному коду, либо включить его в перед ним.
ПРИМЕЧАНИЕ: не требуйте этого через browserify и т. Д., Используйте babel-polyfill.
Я попытался просто добавить файл polyfill.js в начало страницы, но IE8 все еще не доволен использованием скомпилированного кодаdefault
ключевое слово.
Я также попытался добавить polyfill к процессу webpack, согласноhttp://jamesknelson.com/using-es6-in-the-browser-with-babel-6-and-webpack/ и другие предложения от Google
Что я делаю неправильно?