webpack 代码优化压缩方法
Posted SunLemon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webpack 代码优化压缩方法相关的知识,希望对你有一定的参考价值。
在配置基于webpack的react单页面脚手架时,公共依赖库代码打包至vender.js中,页面逻辑代码打包至app.js中,使用webpack-bundle-analyzer分析发现,两个js中包含重复代码。优化方法如下:
webpack.config.js 修改
(1)修改入口文件的顺序,vender.js作为依赖文件应该最先引用
webpackConfig.entry = { vender: [ ‘babel-polyfill‘, ‘classnames‘, ‘react‘, ‘react-dom‘, ‘axios‘, ‘react-router‘, ‘react-router-dom‘ ], app: ‘./src/app.jsx‘ }
(2)uglifyjs-webpack-plugin、CommonsChunkPlugin
使用插件实现优化压缩功能:
webpackConfig.plugins = (webpackConfig.plugins || []).concat([ new webpack.DefinePlugin({ ‘process.env‘: { NODE_ENV: JSON.stringify(‘production‘) } }), new webpack.LoaderOptionsPlugin({ minimize: true }), //去除打包后代码中的注释等信息 new UglifyJsPlugin({ uglifyOptions: { output: { comments: false }, compress: true } }), //添加打包文件时的时间戳 new webpack.BannerPlugin(bannerTxt), //公共代码抽取 new webpack.optimize.CommonsChunkPlugin({ name: "vender", minChunks: Infinity }) ]);
以上是关于webpack 代码优化压缩方法的主要内容,如果未能解决你的问题,请参考以下文章