diff options
Diffstat (limited to '')
-rw-r--r-- | webpack.production.js | 62 |
1 files changed, 31 insertions, 31 deletions
diff --git a/webpack.production.js b/webpack.production.js index a79643b6..22093b1b 100644 --- a/webpack.production.js +++ b/webpack.production.js @@ -3,7 +3,8 @@ var webpack = require('webpack') var path = require('path') var ExtractTextPlugin = require('extract-text-webpack-plugin') var OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin') -var ParallelUglifyPlugin = require('webpack-parallel-uglify-plugin') +const UglifyJsPlugin = require('uglifyjs-webpack-plugin') +const MiniCssExtractPlugin = require('mini-css-extract-plugin') module.exports = [Object.assign({}, baseConfig, { plugins: baseConfig.plugins.concat([ @@ -11,44 +12,33 @@ module.exports = [Object.assign({}, baseConfig, { 'process.env': { 'NODE_ENV': JSON.stringify('production') } - }), - new ParallelUglifyPlugin({ - uglifyJS: { - compress: { - warnings: false - }, - output: { - max_line_len: 1000000 - }, - mangle: false, - sourceMap: false - } - }), - new ExtractTextPlugin('[name].[hash].css') + }) ]), + optimization: { + minimizer: [ + new UglifyJsPlugin({ + parallel: true, + cache: true + }) + ], + splitChunks: { + chunks: 'async', + minChunks: Infinity + } + }, + output: { path: path.join(__dirname, 'public/build'), publicPath: '/build/', - filename: '[id].[name].[hash].js', - baseUrl: '<%- url %>' + filename: '[id].[name].[hash].js' + // baseUrl: '<%- url %>' } }), { entry: { htmlExport: path.join(__dirname, 'public/js/htmlExport.js') }, - module: { - loaders: [{ - test: /\.css$/, - loader: ExtractTextPlugin.extract('style-loader', 'css-loader') - }, { - test: /\.scss$/, - loader: ExtractTextPlugin.extract('style-loader', 'sass-loader') - }, { - test: /\.less$/, - loader: ExtractTextPlugin.extract('style-loader', 'less-loader') - }] - }, + output: { path: path.join(__dirname, 'public/build'), publicPath: '/build/', @@ -61,6 +51,16 @@ module.exports = [Object.assign({}, baseConfig, { } }), new ExtractTextPlugin('html.min.css'), - new OptimizeCssAssetsPlugin() - ] + new OptimizeCssAssetsPlugin(), + new MiniCssExtractPlugin() + ], + module: { + rules: [{ + test: /\.css$/, + use: [ + MiniCssExtractPlugin.loader, + 'css-loader' + ] + }] + } }] |