對生產環境的構建包括合併、抽取、壓縮、調試方面。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