У меня возникла проблема с запуском решения @ Juho с Webpack 2. Документы по миграции Webpack предлагают вам отказаться от разбора модуля babel:
Важно отметить, что вы захотите сказать Babel не анализировать эти символы модуля, чтобы веб-пакет мог их использовать. Вы можете сделать это, установив следующее в опциях .babelrc или babel-loader.
.babelrc:
{
"presets": [
["es2015", { "modules": false }]
]
}
К сожалению, это вступает в противоречие с функциональностью автоматического регистра Babel. Удаление
{ "modules": false }
из вавилонского конфига опять все заработало. Тем не менее, это может привести к прерыванию тряски дерева, поэтому полное решение будет включать перезапись предустановок в параметрах загрузчика :
module: {
rules: [
{
test: /\.js$/,
include: path.resolve('src'),
loader: 'babel-loader',
options: {
babelrc: false,
presets: [['env', {modules: false}]]
}
}
]
}
Редактировать , 13 ноября 2017 года; обновлен фрагмент конфигурации webpack до Webpack 3 (спасибо @ x-yuri). Старый фрагмент Webpack 2:
{
test: /\.js$/,
exclude: ['node_modules'],
loader: 'babel',
query: {
babelrc: false,
presets: [
['es2015', { modules: false }],
],
},
},