webpack 常用plugin和loader

常用Loaders

less-loader, sass-loader
处理样式

url-loader, file-loader
两个都必须用上。否则超过大小限制的图片无法生成到目标文件夹中

babel-loader,babel-preset-es2015,babel-preset-react
js处理,转码

expose?*
eg:
{
test: require.resolve('react'),
loader: 'expose?React'
}

expose-loader
将js模块暴露到全局,如果

常用插件Plugin

config类

NormalModuleReplacementPlugin    匹配resourceRegExp,替换为newResourceContextReplacementPlugin    替换上下文的插件IgnorePlugin    不打包匹配文件PrefetchPlugin    预加载的插件,提高性能ResolverPlugin    替换上下文的插件ContextReplacementPlugin    替换上下文的插件

optimize

DedupePlugin    打包的时候删除重复或者相似的文件MinChunkSizePlugin    把多个小模块进行合并,以减少文件的大小LimitChunkCountPlugin    限制打包文件的个数MinChunkSizePlugin    根据chars大小,如果小于设定的最小值,就合并这些小模块,以减少文件的大小OccurrenceOrderPlugin    根据模块调用次数,给模块分配ids,常被调用的ids分配更短的id,使得ids可预测,降低文件大小,该模块推荐使用UglifyJsPlugin    压缩jsngAnnotatePlugin    使用ng-annotate来管理AngularJS的一些依赖CommonsChunkPlugin    多个 html共用一个js文件(chunk)

dependency injection

DefinePlugin    定义变量,一般用于开发环境log或者全局变量ProvidePlugin    自动加载模块,当配置($:'jquery')例如当使用$时,自动加载jquery

other

HotModuleReplacementPlugin    模块热替换,如果不在dev-server模式下,需要记录数据,recordPath,生成每个模块的热更新模块ProgressPlugin    编译进度NoErrorsPlugin    报错但不退出webpack进程HtmlWebpackPlugin     生成html

常用alias

alias的配置项目,能够让开发者指定一些模块的引用路径。对一些经常要被import或者require的库,如react,我们最好可以直接指定它们的位置,这样webpack可以省下不少搜索硬盘的时间。

UI设计

webpack好文推荐:[br]上面模块只是大概了解,详细可见:http://webpack.github.io/docs/[br]webpack优化使用:http://www.alloyteam.com/2016/01/webpack-use-optimization/[br]中文文档:http://zhaoda.net/webpack-handbook/loader.html

关键字:webpack, 模块, 上下文, 插件

版权声明

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部