123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- 'use strict'
- const merge = require('webpack-merge')
- const baseConfig = require('./webpack.config.base')
- const MiniCssExtractPlugin = require('mini-css-extract-plugin')
- const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
- module.exports = merge(baseConfig, {
- mode: 'production',
- optimization: {
- splitChunks: {
- cacheGroups: {
- commons: {
- test: /[\\/]node_modules[\\/]/,
- name: "vendor",
- chunks: "all",
- },
- },
- },
- minimizer: [new UglifyJsPlugin({
- sourceMap:true,
- cache: true,
- parallel: true,
- uglifyOptions:{
- ecma:8,
- compress: {
- // drop_console: true
- pure_funcs: ['console.log']
- }
- },
- exclude: 'vendor.js',
- })]
- },
- module: {
- rules: [
- {
- test: /\.css?$/,
- use: [
- MiniCssExtractPlugin.loader,
- 'css-loader'
- ]
- }, {
- test: /\.scss$/,
- use: [
- MiniCssExtractPlugin.loader,
- 'css-loader',
- 'sass-loader'
- ]
- }
- ]
- },
- plugins: [
- new MiniCssExtractPlugin({
- filename: 'main.css'
- })
- ]
- })
|