Support NODE_ENV in webpack (#10245)

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
silverwind 2020-02-23 09:47:42 +01:00 committed by GitHub
parent 0bba3f9cf6
commit 9ed4aeeaf1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -19,8 +19,10 @@ for (const path of glob('web_src/less/themes/*.less')) {
themes[parse(path).name] = [path];
}
const isProduction = process.env.NODE_ENV !== 'development';
module.exports = {
mode: 'production',
mode: isProduction ? 'production' : 'development',
entry: {
index: [
resolve(__dirname, 'web_src/js/index.js'),
@ -42,7 +44,7 @@ module.exports = {
chunkFilename: 'js/[name].js',
},
optimization: {
minimize: true,
minimize: isProduction,
minimizer: [
new TerserPlugin({
sourceMap: true,
@ -96,6 +98,7 @@ module.exports = {
resolve(__dirname, 'package-lock.json'),
resolve(__dirname, 'webpack.config.js'),
].map((path) => statSync(path).mtime.getTime()).join(':'),
sourceMaps: true,
presets: [
[
'@babel/preset-env',
@ -190,6 +193,7 @@ module.exports = {
}),
],
performance: {
hints: isProduction ? 'warning' : false,
maxEntrypointSize: 512000,
maxAssetSize: 512000,
assetFilter: (filename) => {
@ -201,4 +205,9 @@ module.exports = {
resolve: {
symlinks: false,
},
watchOptions: {
ignored: [
'node_modules/**',
],
},
};