Конфигурирование Babel

Babel автоматически конфигурируется для всех файлов .js и .jsx через babel-loader с благоразумными значениями по умолчанию (например, с with sensible defaults (например, с предустановкой env и react по запросу).

Вам нужно ещё больше расширить конфигурацию Babel? Самый лёгкий способ сделать это - через configureBabel():

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
// webpack.config.js
// ...

Encore
    // ...

    // для начала, установите любые предустановки, которые вы хотите использовать (например, добавьте babel-preset-es2017)
    // а потом измените конфигурацию Babel по умолчанию
    .configureBabel(function(babelConfig) {
        babelConfig.presets.push('es2017');
    })
;

Создание файла .babelrc

Вместо того, чтобы вызывать configureBabel(), вы можете создать файл .babelrc в корне вашего проекта. Это более "стандартный" способ конфигурации Babel, но у него есть недостатки: как только появляется файл .babelrc, Encore больше не может добавлять никакую конфигурацию Babel для вас. Например, если вы вызовете Encore.enableReactPreset(), предустановка react не будет автоматически добавлена в Babel: вы должны будете добавить её сами в .babelrc.

Пример файла .babelrc может выглядеть так:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
{
    presets: [
        ['env', {
            modules: false,
            targets: {
                browsers: '> 1%',
                uglify: true
            },
            useBuiltIns: true
        }]
    ]
}

Эта документация является переводом официальной документации Symfony и предоставляется по свободной лицензии CC BY-SA 3.0.