webpack(二)环境检测与优化
DefinePlugin能够自动检测环境变化,效率高效。
在前端开发中,在不同的应用环境中,需要不同的配置。如:开发环境的API Mocker、测试流程中的数据伪造、打印调试信息。
如果使用人工处理这些配置信息,不仅麻烦,而且容易出错。
使用DefinePlugin
配置的全局常量
DefinePlugin
配置的全局常量注意,因为这个插件直接执行文本替换,给定的值必须包含字符串本身内的实际引号。通常,有两种方式来达到这个效果,使用 ' "production" '
, 或者使用 JSON.stringify('production')
。
测试DefinePlugin
DefinePlugin
编写
打包后WP_CONF === 'dev'
会便宜为false
清除不可达代码
当使用了DefinePlugin
插件后,打包后的代码会有很多冗余。可以通过UglifyJsPlugin
清除不可达代码。
最后的打包打包代码会变成console.log('This is prod')
附Uglify文档:https://github.com/mishoo/UglifyJS2
Last updated