// webpack生产环境配置 process.env.NODE_ENV = 'production'; const webpack = require('webpack'); const merge = require('webpack-merge'); const common = require('./webpack.common.js'); // 每次build之前删除dist文件夹 const CleanWebpackPlugin = require('clean-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); // css压缩插件 var OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); // js 压缩插件 // const Uglify = require('uglifyjs-webpack-plugin'); module.exports = merge(common, { mode:"production", plugins: [ // new Uglify(), // 把vue组件的css文件提取出来 new MiniCssExtractPlugin({ filename: './css/[name].[hash].css' }), // css压缩(cssnano、OptimizeCssAssetsPlugin) 需要install new OptimizeCssAssetsPlugin({ assetNameRegExp: /\.css$/g, cssProcessor: require('cssnano'), cssProcessorPluginOptions: { preset: ['default', { discardComments: { removeAll: true } }], }, canPrint: true }), // 指定环境 new webpack.DefinePlugin({ 'process.env.NODE_ENV': JSON.stringify('production') }), // 清理/dist 文件夹 new CleanWebpackPlugin(['dist']), ], });