webpack2

24. 二月 2017 JavaScript, tools 0

webpack2.2版本前段时间刚发布,查看了一下我的本地的版本还是1.14,升级一下,webpack2相对于1来说有一些变化,整理一下,方便使用。

一、loader的配置

1.取消了 modules.preLoaders, modules.loaders, modules.afterLoaders,统一变成了 modules.rules

2.多个 loader 从之前的字符串链式拼接变成了 loader.use 数组形式。

旧的 loader 配置被更强大的 rules 系统取代,后者允许配置 loader 以及其他更多项。为了兼容旧版,module.loaders 语法被保留,旧的属性名依然可以被解析。新的命名约定更易于理解并且是升级配置使用 module.rules 的好理由

与 v1 版本相同,loaders 可以链式调用,上一个 loader 的输出被作为输入传给下一个 loader。使用 rule.use 配置项,use 可以设置为一个 loaders 的列表。在 v1 版本中,loaders 通常被用 ! 连写。这一写法在新版中只在使用旧的 module.loaders 时有效。

3.取消了 module.preLoaders 以及 module.postLoaders

4.resolve.extensions 不需要自己写一个空字符串在那了,webpack 会自动解析无后缀的模块加载。

二、UglifyJsPlugin

UglifyJsPluginsourceMap 配置项现在默认为 false 而不是 true

这意味着如果你在压缩代码时启用了 source map,或者想要让 uglifyjs 的警告能够对应到正确的代码行,你需要将 UglifyJsPluginsourceMap 设为 true

UglifyJsPlugin warnings

UglifyJsPlugincompress.warnings 配置项现在默认为 false 而不是 true

这意味着如果你想要看到 uglifyjs 的警告信息,你需要将 compress.warnings 设为 true

UglifyJsPlugin 压缩 loaders

UglifyJsPlugin 不再压缩 loaders。在未来很长一段时间里,需要通过设置 minimize:true 来压缩 loaders。参考 loader 文档里的相关配置项。

loaders 的压缩模式将在 webpack 3 或更高的版本中被取消。

为了兼容旧的 loaders,loaders 可以通过插件来切换到压缩模式:

ExtractTextWebpackPlugin 大变化

ExtractTextPlugin 1.0.0 不能在 webpack v2 下工作。 你需要明确地安装 ExtractTextPlugin v2。

npm install --save-dev extract-text-webpack-plugin@beta

这一插件的配置变化主要体现在语法上。

new ExtractTextPlugin({options})

通过 options 配置 loader

 

 

 

 

 

 

webpack

 

 


发表评论

电子邮件地址不会被公开。