webpack中的模式(mode)使用详解


Posted in Javascript onFebruary 20, 2020

模式(mode)

提供 mode 配置选项,告知 webpack 使用相应模式的内置优化。

用法

只在配置中提供 mode 选项:

module.exports = {
 mode: 'production'
};

或者从 CLI 参数中传递:

webpack --mode=production

支持以下字符串值:

1.development

会将 process.env.NODE_ENV 的值设为 development。启用 NamedChunksPlugin 和 NamedModulesPlugin。

// webpack.development.config.js
module.exports = {
+ mode: 'development'
- plugins: [
-  new webpack.NamedModulesPlugin(),
-  new webpack.DefinePlugin({ "process.env.NODE_ENV": JSON.stringify("development") }),
- ]
}

2.production

会将 process.env.NODE_ENV 的值设为 production。启用 FlagDependencyUsagePlugin, FlagIncludedChunksPlugin, ModuleConcatenationPlugin, NoEmitOnErrorsPlugin, OccurrenceOrderPlugin, SideEffectsFlagPlugin 和 UglifyJsPlugin.

// webpack.production.config.js
module.exports = {
+ mode: 'production',
- plugins: [
-  new UglifyJsPlugin(/* ... */),
-  new webpack.DefinePlugin({ "process.env.NODE_ENV": JSON.stringify("production") }),
-  new webpack.optimize.ModuleConcatenationPlugin(),
-  new webpack.NoEmitOnErrorsPlugin()
- ]
}

production模式下会启用UglifyJsPlugin插件(移除未使用的内容和文件压缩),分别用production和development打包,编译的区别:

1.development打包后,一些没有依赖的方法 变量 文件会保留,production则会移除。

2.production打包后,代码会进行压缩,比development的文件小。

到此这篇关于webpack中的模式(mode)使用详解的文章就介绍到这了,更多相关webpack 模式内容请搜素三水点靠木以前的文章或下面相关文章,希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
判断目标是否是window,document,和拥有tagName的Element的代码
May 31 Javascript
查找Oracle高消耗语句的方法
Mar 22 Javascript
jquery获取复选框被选中的值
Mar 22 Javascript
iframe调用父页面函数示例详解
Jul 17 Javascript
用js动态添加html元素,以及属性的简单实例
Jul 19 Javascript
Javascript之面向对象--接口
Dec 02 Javascript
canvas基础绘制-绚丽倒计时的实例
Sep 17 Javascript
ES6学习教程之模板字符串详解
Oct 09 Javascript
nuxt.js 缓存实践
Jun 25 Javascript
Vue自定义指令封装节流函数的方法示例
Jul 09 Javascript
vue全局使用axios的方法实例详解
Nov 22 Javascript
微信小程序实现点击生成随机验证码
Sep 09 Javascript
jquery向后台提交数组的代码分析
Feb 20 #jQuery
koa-passport实现本地验证的方法示例
Feb 20 #Javascript
javaScript 实现重复输出给定的字符串的常用方法小结
Feb 20 #Javascript
一篇文章带你浅入webpack的DLL优化打包
Feb 20 #Javascript
浅析JS中NEW的实现原理及重写
Feb 20 #Javascript
JS通过识别id、value值对checkbox设置选中状态
Feb 19 #Javascript
Javascript实现html转pdf高清版(提高分辨率)
Feb 19 #Javascript
You might like
来自PHP.NET的入门教程
2006/10/09 PHP
php下的权限算法的实现
2007/04/28 PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
2014/06/06 PHP
PHP如何使用Memcached
2016/04/05 PHP
用js来定义浏览器中一个左右浮动元素相对于页面主体宽度的位置的函数
2012/01/21 Javascript
Ajax异步提交表单数据的说明及方法实例
2013/06/22 Javascript
JQUERY 设置SELECT选中项代码
2014/02/07 Javascript
JavaScript判断是否为数组的3种方法及效率比较
2015/04/01 Javascript
简单对比分析JavaScript中的apply,call与this的使用
2015/12/04 Javascript
详解vue-router传参的两种方式
2018/09/10 Javascript
JavaScript 作用域scope简单汇总
2019/10/23 Javascript
Electron实现应用打包、自动升级过程解析
2020/07/07 Javascript
Vue.extend 登录注册模态框的实现
2020/12/29 Vue.js
[04:09]2018年度DOTA2社区贡献奖-完美盛典
2018/12/16 DOTA
[36:16]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.19
2020/12/24 DOTA
深入解析Python中的变量和赋值运算符
2015/10/12 Python
Python延时操作实现方法示例
2018/08/14 Python
Python深拷贝与浅拷贝用法实例分析
2019/05/05 Python
python修改字典键(key)的方法
2019/08/05 Python
python使用socket 先读取长度,在读取报文内容示例
2019/09/26 Python
PyTorch的自适应池化Adaptive Pooling实例
2020/01/03 Python
Django关于admin的使用技巧和知识点
2020/02/10 Python
Python如何脚本过滤文件中的注释
2020/05/27 Python
HTML5中微数据概述及在搜索引擎中的使用举例
2013/02/07 HTML / CSS
托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别
2014/09/29 面试题
一套Delphi的笔试题二
2013/05/11 面试题
学生思想表现的评语
2014/01/30 职场文书
高中运动会入场词
2014/02/14 职场文书
优秀经理获奖感言
2014/03/04 职场文书
保护动物倡议书
2014/04/15 职场文书
毕业生工作求职信
2014/06/30 职场文书
艺术设计专业毕业生推荐信
2014/07/08 职场文书
通知的写法
2015/04/23 职场文书
九年级数学教学反思
2016/02/17 职场文书
小学四年级作文之写景
2019/08/23 职场文书
Django实现drf搜索过滤和排序过滤
2021/06/21 Python