我是新手,我正在尝试理解加载器以及它的属性,如测试,加载器,包含等。
这是我在谷歌上找到的webpack.config.js的样本片段。
module: {
loaders: [
{
test: /\.js$/,
loader: 'babel-loader',
include: [
path.resolve(__dirname, 'index.js'),
path.resolve(__dirname, 'config.js'),
path.resolve(__dirname, 'lib'),
path.resolve(__dirname, 'app'),
path.resolve(__dirname, 'src')
],
exclude: [
path.resolve(__dirname, 'test', 'test.build.js')
],
cacheDirectory: true,
query: {
presets: ['es2015']
}
},
]
}
发布于 2016-01-19 02:36:45
在webpack的配置中有多项配置,重要的有
的文件-您想要创建的最终
输出:{文件名:"name.bundle.js",供应商:"react“}
然后,您的应用程序js文件将被捆绑为main.bundle.js,并在vendor.js文件中进行反应。如果在html页中不同时使用这两种方法,则是错误的。
希望能有所帮助
发布于 2017-10-28 00:16:44
这些文档帮助我更好地理解。看起来这是针对webpack 1的,但仍然适用。
https://webpack.github.io/docs/configuration.html#module-loaders
加载器
自动应用的加载器数组。
每个项目都可以具有以下属性:
(字符串分离的加载器将加载器的数组命名为string)
这个例子帮助我理解了到底是怎么回事。看起来您可以使用include或exclude,但不能同时使用两者。测试是应用于所有文件的条件。因此,如果包含文件夹,则每个文件都必须通过测试条件。我没有验证这一点,但根据文档提供的示例,它看起来是如何工作的。
module: {
rules: [
{
// "test" is commonly used to match the file extension
test: /\.jsx$/,
// "include" is commonly used to match the directories
include: [
path.resolve(__dirname, "app/src"),
path.resolve(__dirname, "app/test")
],
// "exclude" should be used to exclude exceptions
// try to prefer "include" when possible
// the "loader"
loader: "babel-loader" // or "babel" because webpack adds the '-loader' automatically
}
]
}
发布于 2016-01-06 07:49:36
1)正确。
2)正确。
3)正确。
4)我不确定。我的webpack.config.js文件包含一个输出键,并将其全部打包到一个文件中:
output: {
path: path.resolve(__dirname, 'build'),
filename: 'bundle.js'
}
5)正确。
6)这将告诉babel-loader您希望它执行哪种类型的转换,以及其他编译选项。因此,例如,如果您希望它也传输jsx +缓存结果以提高性能,您可以将其更改为:
query: {
presets: ['react', 'es2015'],
cacheDirectory: true
}
https://stackoverflow.com/questions/34623229
复制相似问题