У меня есть webpack.config.js
:
module.exports = {
entry: './src/admin/client/index.jsx',
output: {
filename: './src/admin/client/static/js/app.js'
},
loaders: [
{
test: /\.jsx?$/,
loader: 'babel',
exclude: /node_modules/,
query: {
optional: ['runtime']
}
}
],
resolve: {
extensions: ['', '.js', '.jsx']
}
};
... но я все еще получаю эту ошибку:
$ webpack -v Hash: 2a9a40224beb025cb433 Version: webpack 1.10.5 Time: 44ms [0] ./src/admin/client/index.jsx 0 bytes [built] [failed] ERROR in ./src/admin/client/index.jsx Module parse failed: /project/src/admin/client/index.jsx Line 1: Unexpected reserved word You may need an appropriate loader to handle this file type. | import React from 'react'; | import AdminInterface from './components/AdminInterface';
У меня есть:
- Установлен
webpack
глобально и локально - Установленные
babel-loader
,babel-core
иbabel-runtime
- Установлен
babel-loader
глобально, на всякий случай
Почему, черт возьми, webpack, казалось бы, игнорирует babel-loader
? Или babel-loader
не работает с модулями?
Обновление
Похоже, что babel
отлично обрабатывает входной файл. Когда я запускаю:
./node_modules/babel/bin/babel.js ./src/admin/client/index.jsx
... он выводит ES5, как ожидалось. Поэтому мне кажется, что как-то webpack
неправильно загружается babel-loader
.