Webpack-错误:无法在加载器列表中定义“查询"和多个加载器 [英] Webpack - Error: Cannot define 'query' and multiple loaders in loaders list
问题描述
在我按照本教程在数组中添加了react-hot
加载器后,出现了此错误: https://thoughtbot.com/blog/setting-up-webpack-for-react-and-hot-module-replacement
This error appeared after I added the react-hot
loader in an array following this tutorial: https://thoughtbot.com/blog/setting-up-webpack-for-react-and-hot-module-replacement
我正在获取Error: Cannot define 'query' and multiple loaders in loaders list
.
var WebpackDevServer = require("webpack-dev-server");
var webpack = require('webpack');
var path = require('path');
require("babel-polyfill");
var BUILD_DIR = path.resolve(__dirname, 'build');
var APP_DIR = path.resolve(__dirname, 'src');
module.exports = {
entry: [
'babel-polyfill',
'bootstrap-loader',
'webpack/hot/dev-server',
APP_DIR + '/import.js',
],
output: {
path: BUILD_DIR,
filename: 'bundle.js'
},
module: {
loaders: [{
test: /\.jsx?$/,
loaders: ['react-hot', 'babel'],
exclude: /node_modules/,
query: {
plugins: ['transform-runtime'],
presets: ['es2015', 'stage-0', 'react']
}
}, {
test: /\.css$/,
loader: "style-loader!css-loader"
}, {
test: /\.scss$/,
loaders: ["style", "css", "sass"]
}, {
test: /\.(png|woff|woff2|eot|ttf|svg|jpg|gif)$/,
loader: 'url-loader?limit=100000'
}]
},
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery"
}),
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin()
]
};
推荐答案
查询似乎是自定义单个加载程序行为的另一种方式,比内联指定这些参数更干净(见下文).如果存在多个加载程序,则Webpack不知道query
配置适用于哪个.
It seems that the query is an alternative way of customizing the behaviour of a single loader, that is cleaner than specifying those parameters inline (see below). If multiple loaders are present, Webpack does not know to which the query
configuration applies.
以下方法可以解决您的问题:
The following should solve your problem:
module: {
loaders: [{
test: /\.jsx?$/,
exclude: /node_modules/,
loaders: ['react-hot', 'babel?presets[]=es2015,presets[]=stage-0,presets[]=react,plugins[]=transform-runtime']
}
编辑:尽管此解决方案适用于Webpack 1,但请参见其他答案,以获取在较新版本中工作的更清洁的解决方案.
While this solution works for Webpack 1, see the other answers for cleaner solutions that work in more recent versions.
这篇关于Webpack-错误:无法在加载器列表中定义“查询"和多个加载器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!