У меня есть проект React, который использует Webpack в качестве модуля, и babel-loader
, чтобы преобразовать его в ES5, используя следующие настройки:
module: {
rules: [
{
test: /\.jsx?$/,
exclude: /node_modules/,
use: [
{
loader: "babel-loader"
}
]
}
]
},
Параметры задаются в автономном файле .babelrc
.
Babel 6.13.0 поддерживает модули ECMAScript, что означает, что модули ECMAScript не нужно сначала преобразовывать в модули CommonJS. Чтобы получить это поведение, в документации говорится, что мы должны использовать этот параметр в нашем .babelrc
.
{
presets: [["es2015", { "modules": false }], "react"]
}
Однако, когда я пытаюсь запустить Webpack, используя этот параметр, он возвращается с ошибкой:
$ ./node_modules/.bin/webpack
/home/d4nyll/foo/bar/webpack.config.babel.js:1
(function (exports, require, module, __filename, __dirname) { import webpack from 'webpack';
^^^^^^
SyntaxError: Unexpected token import
Я предполагаю, что это потому, что babel-loader
не действует на webpack.config.babel.js
и поэтому не распознает ключевое слово import
. Ошибка не появляется, когда { "modules": false }
удаляется, но я хочу эту функциональность. Как я могу заставить Бабеля распознать webpack.config.babel.js
?