summaryrefslogtreecommitdiff
path: root/webpack.production.js
diff options
context:
space:
mode:
authorDavid Mehren2018-07-02 22:24:56 +0200
committerDavid Mehren2018-09-06 17:26:09 +0200
commit29a3813adaa54adaafab1678e30d754ecf0c9e3b (patch)
tree5f6f0c79c1f6207539a448dbd248c95cdea4a1e5 /webpack.production.js
parent0017ddd3101f7c9445a70e8b38bf0046a0730f16 (diff)
Upgrade to Webpack 4 - first try
Signed-off-by: David Mehren <dmehren1@gmail.com>
Diffstat (limited to '')
-rw-r--r--webpack.production.js62
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'
+ ]
+ }]
+ }
}]