Skip to content

Commit 81328ba

Browse files
committed
promote --env and get default mode
1 parent 4c95824 commit 81328ba

File tree

3 files changed

+19
-15
lines changed

3 files changed

+19
-15
lines changed

build/utils.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
exports.pages = function (env, folder = '') {
1+
exports.pages = function (mode, folder = '') {
22
const rootPagesFolderName = 'pages'
33
const HtmlWebpackPlugin = require('html-webpack-plugin')
44
const fs = require('fs')
@@ -14,13 +14,13 @@ exports.pages = function (env, folder = '') {
1414
const viewName = view.split('.')[0]
1515
const fileName = folder === '' ? `${viewName}/index.html` : `${folder}/${viewName}/index.html`
1616
const options = {
17-
minify: !env === 'development',
17+
minify: !mode === 'development',
1818
filename: fileName,
1919
template: `views/${rootPagesFolderName}/${folder}/${view}`,
2020
inject: true
2121
}
2222

23-
if (env === 'development') {
23+
if (mode === 'development') {
2424
options.minify = {
2525
removeComments: true,
2626
collapseWhitespace: true,

build/webpack.config.js

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,17 @@ const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin')
1212

1313
const ASSET_PATH = process.env.ASSET_PATH || '/'
1414

15-
1615
// Files
1716
const utils = require('./utils')
1817

1918
// Configuration
20-
module.exports = env => {
19+
module.exports = (env) => {
20+
21+
// Get default mode from env
22+
const MODE = env.mode || 'production';
2123

2224
return {
25+
mode: MODE,
2326
target: 'web',
2427
context: path.join(__dirname, '../src'),
2528
entry: {
@@ -62,7 +65,7 @@ module.exports = env => {
6265
{
6366
test: /\.css$/,
6467
use: [
65-
env === 'development' ? 'style-loader' : MiniCssExtractPlugin.loader,
68+
MODE === 'development' ? 'style-loader' : MiniCssExtractPlugin.loader,
6669
{
6770
loader: 'css-loader',
6871
options: {
@@ -75,7 +78,7 @@ module.exports = env => {
7578
{
7679
test: /\.scss$/,
7780
use: [
78-
env === 'development' ? 'style-loader' : MiniCssExtractPlugin.loader, // creates style nodes from JS strings
81+
MODE === 'development' ? 'style-loader' : MiniCssExtractPlugin.loader, // creates style nodes from JS strings
7982
{ loader: 'css-loader', options: { importLoaders: 1, sourceMap: true } }, // translates CSS into CommonJS
8083
'postcss-loader',
8184
'sass-loader', // compiles Sass to CSS
@@ -158,16 +161,17 @@ module.exports = env => {
158161
Pages
159162
*/
160163

161-
// Desktop page
164+
// Homepage
162165
new HtmlWebpackPlugin({
163-
minify: !env === 'development',
166+
minify: !MODE === 'development',
164167
filename: 'index.html',
165168
template: 'views/index.pug',
166169
inject: 'body',
167170
}),
168171

169-
...utils.pages(env), // env, public path, parent folder
170-
...utils.pages(env, 'blog'),
172+
// Other pages
173+
...utils.pages(MODE), // mode
174+
...utils.pages(MODE, 'blog'), // mode, folder name under pages
171175

172176
new webpack.ProvidePlugin({
173177
$: 'jquery',

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@
1212
"license": "MIT",
1313
"scripts": {
1414
"test": "echo \"Error: no test specified\" && exit 1",
15-
"build": "rimraf dist && webpack --config ./build/webpack.config.js --mode development --progress",
16-
"dev-network": "webpack server --config ./build/webpack.config.js --mode=development --progress --open --host 0.0.0.0",
17-
"dev": "webpack serve --config ./build/webpack.config.js --mode development --progress",
18-
"prod": "rimraf dist && webpack --config ./build/webpack.config.js --mode production --progress "
15+
"build": "rimraf dist && webpack --env mode=development --config ./build/webpack.config.js --progress",
16+
"dev-network": "webpack serve --env mode=development --config ./build/webpack.config.js --progress --open --host 0.0.0.0 --disable-host-check",
17+
"dev": "webpack serve --env mode=development --config ./build/webpack.config.js --progress",
18+
"prod": "rimraf dist && webpack --env mode=production --config ./build/webpack.config.js --progress "
1919
},
2020
"resolutions": {
2121
"upath": "1.1.1"

0 commit comments

Comments
 (0)