12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- 'use strict'
- const webpack = require('webpack')
- const merge = require('webpack-merge')
- const baseConfig = require('./webpack.config.base')
- const MiniCssExtractPlugin = require('mini-css-extract-plugin')
- // const UglifyJSPlugin = require('uglifyjs-webpack-plugin')
- // ERROR in vendor.js from UglifyJs
- // RangeError: Maximum call stack size exceeded
- module.exports = merge(baseConfig, {
- mode: 'production',
- output: {
- publicPath: '/'
- },
- optimization: {
- // minimizer: [
- // new UglifyJSPlugin({
- // uglifyOptions: {
- // // Eliminate comments
- // comments: false,
- // // remove warnings
- // warnings: false,
- // minimize: false,
- // mangle: false,
- // compress: {
- // // Drop console statements
- // drop_console: true,
- // }
- // }
- // })
- // ],
- splitChunks: {
- cacheGroups: {
- commons: {
- test: /[\\/]node_modules[\\/]/,
- name: "vendor",
- chunks: "all",
- }
- }
- }
- },
- module: {
- rules: [
- {
- test: /\.css?$/,
- use: [
- MiniCssExtractPlugin.loader,
- 'css-loader'
- ]
- }, {
- test: /\.scss$/,
- use: [
- MiniCssExtractPlugin.loader,
- 'css-loader',
- 'sass-loader'
- ]
- }
- ]
- },
- plugins: [
- new MiniCssExtractPlugin({
- filename: 'main.css'
- }),
- new webpack.DefinePlugin({
- "process.env": "'prod'"
- })
- ]
- })
|