Optimize webpack build

This commit is contained in:
Pig Fang 2018-08-02 23:02:13 +08:00
parent 3dfa5c6e4e
commit 2927090bb7
3 changed files with 39 additions and 16 deletions

View File

@ -17,6 +17,9 @@
"codecov": "codecov -F js",
"postinstall": "rimraf node_modules/jest-runtime/node_modules/babel-core node_modules/jest-config/node_modules/babel-core"
},
"resolutions": {
"uglify-es": "npm:terser"
},
"dependencies": {
"@babel/runtime": "^7.0.0-beta.55",
"admin-lte": "^2.4.2",
@ -52,6 +55,7 @@
"babel-eslint": "^8.2.6",
"babel-loader": "^8.0.0-beta.4",
"babel-plugin-dynamic-import-node": "^2.0.0",
"cache-loader": "^1.2.2",
"codecov": "^3.0.0",
"copy-webpack-plugin": "^4.5.2",
"css-loader": "^1.0.0",

View File

@ -1,6 +1,7 @@
const VueLoaderPlugin = require('vue-loader/lib/plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const CopyWebpackPlugin = require('copy-webpack-plugin');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
const WebpackBar = require('webpackbar');
const devMode = !process.argv.includes('-p');
@ -34,14 +35,17 @@ module.exports = [{
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader',
options: {
cacheDirectory: true
}
use: [
'cache-loader',
'babel-loader'
]
},
{
test: /\.vue$/,
loader: 'vue-loader'
use: [
'cache-loader',
'vue-loader'
]
},
{
test: /\.(css|styl(us)?)$/,
@ -91,6 +95,15 @@ module.exports = [{
},
]),
],
optimization: {
minimizer: [
new UglifyJsPlugin({
cache: true,
parallel: 4,
extractComments: 'lib-license.txt'
})
]
},
resolve: {
extensions: ['.js', '.vue', '.json']
},

View File

@ -1724,6 +1724,15 @@ cache-base@^1.0.1:
union-value "^1.0.0"
unset-value "^1.0.0"
cache-loader@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-1.2.2.tgz#6d5c38ded959a09cc5d58190ab5af6f73bd353f5"
dependencies:
loader-utils "^1.1.0"
mkdirp "^0.5.1"
neo-async "^2.5.0"
schema-utils "^0.4.2"
cached-path-relative@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/cached-path-relative/-/cached-path-relative-1.0.1.tgz#d09c4b52800aa4c078e2dd81a869aac90d2e54e7"
@ -2034,14 +2043,10 @@ combined-stream@1.0.6, combined-stream@^1.0.5, combined-stream@~1.0.5:
dependencies:
delayed-stream "~1.0.0"
commander@^2.9.0:
commander@^2.9.0, commander@~2.16.0:
version "2.16.0"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.16.0.tgz#f16390593996ceb4f3eeb020b31d78528f7f8a50"
commander@~2.13.0:
version "2.13.0"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c"
commondir@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
@ -6526,7 +6531,7 @@ sax@^1.2.4, sax@~1.2.4:
version "1.2.4"
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
schema-utils@^0.4.0, schema-utils@^0.4.3, schema-utils@^0.4.4, schema-utils@^0.4.5:
schema-utils@^0.4.0, schema-utils@^0.4.2, schema-utils@^0.4.3, schema-utils@^0.4.4, schema-utils@^0.4.5:
version "0.4.5"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e"
dependencies:
@ -6727,7 +6732,7 @@ source-map-support@^0.4.15:
dependencies:
source-map "^0.5.6"
source-map-support@^0.5.6:
source-map-support@^0.5.6, source-map-support@~0.5.6:
version "0.5.6"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.6.tgz#4435cee46b1aab62b8e8610ce60f788091c51c13"
dependencies:
@ -7266,12 +7271,13 @@ typeface-ubuntu@^0.0.54:
version "0.0.54"
resolved "https://registry.yarnpkg.com/typeface-ubuntu/-/typeface-ubuntu-0.0.54.tgz#1219d28be0a86b9a2d779e53d8b89d13de911ac3"
uglify-es@^3.3.4:
version "3.3.9"
resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677"
uglify-es@^3.3.4, "uglify-es@npm:terser":
version "3.8.1"
resolved "https://registry.yarnpkg.com/terser/-/terser-3.8.1.tgz#cb70070ac9e0a71add169dfb63c0a64fca2738ac"
dependencies:
commander "~2.13.0"
commander "~2.16.0"
source-map "~0.6.1"
source-map-support "~0.5.6"
uglify-js@^2.6:
version "2.8.29"