Skip to content

Commit

Permalink
Fix webpack uglify
Browse files Browse the repository at this point in the history
  • Loading branch information
CKGrafico committed Apr 6, 2019
1 parent 18a2308 commit b3e2dd0
Show file tree
Hide file tree
Showing 5 changed files with 101 additions and 21 deletions.
46 changes: 42 additions & 4 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,11 @@
"husky": "^1.3.1",
"lint-staged": "^8.1.0",
"node-sass": "^4.9.0",
"require.all": "^2.0.4",
"sass-loader": "^7.1.0",
"ts-jest": "^23.0.0",
"typescript": "^3.2.1",
"uglifyjs-webpack-plugin": "^2.1.2",
"vue-template-compiler": "^2.5.21"
},
"repository": "https://github.com/CKGrafico/Frontend-Boilerplates#frontend-boilerplates",
Expand Down
2 changes: 1 addition & 1 deletion src/app/core/helpers/next-tick.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ export function nextTick() {
return new Promise(resolve => {
setTimeout(resolve, 10);
});
};
}
16 changes: 16 additions & 0 deletions tasks/plugins/uglify.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
const UglifyJSPlugin = require('uglifyjs-webpack-plugin');

module.exports = (env) => {
const defaultConfig = new UglifyJSPlugin({
uglifyOptions: {
keep_classnames: true,
keep_fnames: true,
}
});

const plugin = {
production: defaultConfig
};

return plugin[env];
}
56 changes: 40 additions & 16 deletions vue.config.js
Original file line number Diff line number Diff line change
@@ -1,22 +1,46 @@
const path = require('path');
// const rules = require('require.all')('./tasks/rules');
const plugins = require('require.all')('./tasks/plugins');

module.exports = {
lintOnSave: false,
css: {
loaderOptions: {
sass: {
data: `@import "~@/styles/base/_variables.scss";`
module.exports = env => {
let environment = process.env.NODE_ENV;

// rules((name, rule) => rule(environment));
plugins((name, rule) => rule(environment));

return ({
lintOnSave: false,
css: {
loaderOptions: {
sass: {
data: `@import "~@/styles/base/_variables.scss";`
}
}
}
},
configureWebpack: {
plugins: [],
resolve: {
alias: {
'styles': path.join(__dirname, 'src/styles'),
'assets': path.join(__dirname, 'src/assets'),
'~': path.join(__dirname, 'src/app')
},
configureWebpack: {
plugins: [],
optimization: {
splitChunks: {
cacheGroups: {
vendor: {
chunks: 'all',
test: path.resolve(__dirname, 'node_modules'),
name: 'vendor',
enforce: true,
},
},
},
},
resolve: {
alias: {
'styles': path.join(__dirname, 'src/styles'),
'assets': path.join(__dirname, 'src/assets'),
'~': path.join(__dirname, 'src/app')
}
}
},
chainWebpack: config => {
config.optimization.minimizer([plugins.uglify]);
}
}
})
}

0 comments on commit b3e2dd0

Please sign in to comment.