对生产环境的构建包括合并、抽取、压缩、调试方面。javascript
JS压缩:php
//安装 npm install -D uglifyjs-webpack-plugin //配置webpack.config.js const UglifyJsPlugin = require('uglifyjs-webpack-plugin') module.exports = { plugins: [ new UglifyJsPlugin() ] }
参考资料:UglifyjsWebpackPlugincss
CSS压缩:vue
//webpack.config.js { loader: 'css-loader', options: { minimize: true } }
//webpack.config.js // 小技巧 :在 css-loader 后边加 ?minimize 便可 loaders: { css: ExtractTextPlugin.extract({use: 'css-loader?minimize!px2rem-loader?remUnit=40&remPrecision=8', fallback: 'vue-style-loader'}), scss: ExtractTextPlugin.extract({use: 'css-loader?minimize!px2rem-loader?remUnit=40&remPrecision=8!sass-loader', fallback: 'vue-style-loader'}) }
参考资料:minimizejava
开启sourceMap:
开启 sourceMap ,npm run build 后会生成 xxx.js.map / xxx.css.map 文件,此文件也要上线,便于错误查找。webpack
//配置webpack.config.js module.exports = { devtool:'source-map', plugins: [ new UglifyJsPlugin({ sourceMap:true }) ] }
参考资料:sourceMapgit
简单包括提交、部署、开启gzip压缩、更新CDN。github