【发布时间】:2016-10-14 13:45:31
【问题描述】:
在“webpack.config.js”中,如果我们需要使用加载器,通常我们会使用“include”和“exclude”来包含或排除一些文件。 这里的问题是为什么?
既然我们的“webpack.config.js”中已经有了“entry”,那么webpack会将所有相关文件递归地转换成一个目标文件“bundle.js”。加载器将转换相关文件。换句话说,加载器已经知道将要转换哪些文件。那为什么我们在每个 loader 中还需要“include”和“exclude”呢?
一个常规的 webpack.config.js 将包括:
var path = require('path');
module.exports = {
entry: [
'./index.js'
],
output: {
path: path.join(__dirname,"public"),
filename: 'bundle.js'
},
module: {
loaders: [{
test: /\.js$/,
loader: 'babel',
exclude: /node_modules/,
query: {
presets: ['es2015']
}
}]
}
};
以上面为例,为什么我们需要“exclude: /node_modules/”?
如果我不指定“包含”或“排除”,将包含什么样的“.js”文件? “包含”或“排除”是否递归工作?
谢谢
德里克
【问题讨论】:
标签: webpack