Skip to content

Commit ee9e138

Browse files
committed
feat: 项目优化
1. 整理项目的依赖文件 2. 添加webpack插件优化打包速度 3. git ignore dist
1 parent 8954e87 commit ee9e138

File tree

4 files changed

+122
-4
lines changed

4 files changed

+122
-4
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ node_modules
33
# local env files
44
.env.local
55
.env.*.local
6-
#dist
6+
dist
77
# Log files
88
npm-debug.log*
99
yarn-debug.log*

package.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,9 @@
1616
"dayjs": "^1.8.12",
1717
"echarts": "^4.2.1",
1818
"element-ui": "^2.6.1",
19-
"mockjs": "^1.0.1-beta3",
2019
"nprogress": "^0.2.0",
2120
"qs": "^6.7.0",
2221
"register-service-worker": "^1.6.2",
23-
"uglifyjs-webpack-plugin": "^2.1.2",
2422
"vue": "^2.6.6",
2523
"vue-router": "^3.0.1",
2624
"vuex": "^3.0.1",
@@ -32,11 +30,15 @@
3230
"@vue/cli-plugin-pwa": "^3.5.0",
3331
"@vue/cli-service": "^3.5.0",
3432
"@vue/eslint-config-standard": "^4.0.0",
33+
"autodll-webpack-plugin": "^0.4.2",
3534
"babel-eslint": "^10.0.1",
3635
"eslint": "^5.8.0",
3736
"eslint-plugin-vue": "^5.0.0",
37+
"hard-source-webpack-plugin": "^0.13.1",
38+
"mockjs": "^1.0.1-beta3",
3839
"node-sass": "^4.9.0",
3940
"sass-loader": "^7.1.0",
41+
"uglifyjs-webpack-plugin": "^2.1.2",
4042
"vue-template-compiler": "^2.5.21"
4143
}
4244
}

vue.config.js

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
2+
const HardSourceWebpackPlugin = require('hard-source-webpack-plugin');
3+
const AutoDllPlugin = require('autodll-webpack-plugin');
4+
const pkg = require('./package');
25
const path = require('path');
36
const resolve = dir => path.resolve(__dirname, `src/${dir}/`);
47
const argv = process.argv;
@@ -70,6 +73,18 @@ module.exports = {
7073
}
7174
},
7275
configureWebpack: {
76+
plugins: [
77+
new HardSourceWebpackPlugin(),
78+
new AutoDllPlugin({
79+
inject: true, // will inject the DLL bundle to index.html
80+
debug: true,
81+
filename: '[name]_[hash].js',
82+
path: './dll',
83+
entry: {
84+
vendor: Object.keys(pkg.dependencies)
85+
}
86+
})
87+
],
7388
optimization: { // 移除打包后的console.log
7489
minimizer: [
7590
new UglifyJsPlugin({

yarn.lock

Lines changed: 102 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1427,6 +1427,22 @@ atob@^2.1.1:
14271427
resolved "http://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
14281428
integrity sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=
14291429

1430+
autodll-webpack-plugin@^0.4.2:
1431+
version "0.4.2"
1432+
resolved "https://registry.npm.taobao.org/autodll-webpack-plugin/download/autodll-webpack-plugin-0.4.2.tgz#36e98fbaf30c235d1d5d076330464ac80901415c"
1433+
integrity sha1-NumPuvMMI10dXQdjMEZKyAkBQVw=
1434+
dependencies:
1435+
bluebird "^3.5.0"
1436+
del "^3.0.0"
1437+
find-cache-dir "^1.0.0"
1438+
lodash "^4.17.4"
1439+
make-dir "^1.0.0"
1440+
memory-fs "^0.4.1"
1441+
read-pkg "^2.0.0"
1442+
tapable "^1.0.0"
1443+
webpack-merge "^4.1.0"
1444+
webpack-sources "^1.0.1"
1445+
14301446
autoprefixer@^9.4.8:
14311447
version "9.4.10"
14321448
resolved "http://registry.npm.taobao.org/autoprefixer/download/autoprefixer-9.4.10.tgz#e1be61fc728bacac8f4252ed242711ec0dcc6a7b"
@@ -1605,6 +1621,11 @@ bluebird@^3.1.1, bluebird@^3.5.1, bluebird@^3.5.3:
16051621
resolved "http://registry.npm.taobao.org/bluebird/download/bluebird-3.5.3.tgz#7d01c6f9616c9a51ab0f8c549a79dfe6ec33efa7"
16061622
integrity sha1-fQHG+WFsmlGrD4xUmnnf5uwz76c=
16071623

1624+
bluebird@^3.5.0:
1625+
version "3.5.5"
1626+
resolved "https://registry.npm.taobao.org/bluebird/download/bluebird-3.5.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbluebird%2Fdownload%2Fbluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f"
1627+
integrity sha1-qNCv1zJR7/u9X+OEp31zADwXpx8=
1628+
16081629
bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0:
16091630
version "4.11.8"
16101631
resolved "http://registry.npm.taobao.org/bn.js/download/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f"
@@ -2793,6 +2814,11 @@ destroy@~1.0.4:
27932814
resolved "http://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
27942815
integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=
27952816

2817+
detect-indent@^5.0.0:
2818+
version "5.0.0"
2819+
resolved "https://registry.npm.taobao.org/detect-indent/download/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d"
2820+
integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50=
2821+
27962822
detect-libc@^1.0.2:
27972823
version "1.0.3"
27982824
resolved "http://registry.npm.taobao.org/detect-libc/download/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
@@ -4021,6 +4047,25 @@ har-validator@~5.1.0:
40214047
ajv "^6.5.5"
40224048
har-schema "^2.0.0"
40234049

4050+
hard-source-webpack-plugin@^0.13.1:
4051+
version "0.13.1"
4052+
resolved "https://registry.npm.taobao.org/hard-source-webpack-plugin/download/hard-source-webpack-plugin-0.13.1.tgz#a99071e25b232f1438a5bc3c99f10a3869e4428e"
4053+
integrity sha1-qZBx4lsjLxQ4pbw8mfEKOGnkQo4=
4054+
dependencies:
4055+
chalk "^2.4.1"
4056+
find-cache-dir "^2.0.0"
4057+
graceful-fs "^4.1.11"
4058+
lodash "^4.15.0"
4059+
mkdirp "^0.5.1"
4060+
node-object-hash "^1.2.0"
4061+
parse-json "^4.0.0"
4062+
pkg-dir "^3.0.0"
4063+
rimraf "^2.6.2"
4064+
semver "^5.6.0"
4065+
tapable "^1.0.0-beta.5"
4066+
webpack-sources "^1.0.1"
4067+
write-json-file "^2.3.0"
4068+
40244069
has-ansi@^2.0.0:
40254070
version "2.0.0"
40264071
resolved "http://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
@@ -4685,6 +4730,11 @@ is-path-inside@^1.0.0:
46854730
dependencies:
46864731
path-is-inside "^1.0.1"
46874732

4733+
is-plain-obj@^1.0.0:
4734+
version "1.1.0"
4735+
resolved "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e"
4736+
integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4=
4737+
46884738
is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4:
46894739
version "2.0.4"
46904740
resolved "http://registry.npm.taobao.org/is-plain-object/download/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
@@ -5163,6 +5213,11 @@ lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.3, lodash@^4.17.4,
51635213
resolved "http://registry.npm.taobao.org/lodash/download/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
51645214
integrity sha1-s56mIp72B+zYniyN8SU2iRysm40=
51655215

5216+
lodash@^4.15.0:
5217+
version "4.17.15"
5218+
resolved "https://registry.npm.taobao.org/lodash/download/lodash-4.17.15.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flodash%2Fdownload%2Flodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548"
5219+
integrity sha1-tEf2ZwoEVbv+7dETku/zMOoJdUg=
5220+
51665221
log-symbols@^2.2.0:
51675222
version "2.2.0"
51685223
resolved "http://registry.npm.taobao.org/log-symbols/download/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a"
@@ -5641,6 +5696,11 @@ node-libs-browser@^2.0.0:
56415696
util "^0.11.0"
56425697
vm-browserify "0.0.4"
56435698

5699+
node-object-hash@^1.2.0:
5700+
version "1.4.2"
5701+
resolved "https://registry.npm.taobao.org/node-object-hash/download/node-object-hash-1.4.2.tgz#385833d85b229902b75826224f6077be969a9e94"
5702+
integrity sha1-OFgz2FsimQK3WCYiT2B3vpaanpQ=
5703+
56445704
node-pre-gyp@^0.10.0:
56455705
version "0.10.3"
56465706
resolved "http://registry.npm.taobao.org/node-pre-gyp/download/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc"
@@ -7491,6 +7551,13 @@ sockjs@0.3.19:
74917551
faye-websocket "^0.10.0"
74927552
uuid "^3.0.1"
74937553

7554+
sort-keys@^2.0.0:
7555+
version "2.0.0"
7556+
resolved "https://registry.npm.taobao.org/sort-keys/download/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128"
7557+
integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=
7558+
dependencies:
7559+
is-plain-obj "^1.0.0"
7560+
74947561
source-list-map@^2.0.0:
74957562
version "2.0.1"
74967563
resolved "http://registry.npm.taobao.org/source-list-map/download/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
@@ -7909,6 +7976,11 @@ tapable@^1.0.0, tapable@^1.1.0:
79097976
resolved "http://registry.npm.taobao.org/tapable/download/tapable-1.1.1.tgz#4d297923c5a72a42360de2ab52dadfaaec00018e"
79107977
integrity sha1-TSl5I8WnKkI2DeKrUtrfquwAAY4=
79117978

7979+
tapable@^1.0.0-beta.5:
7980+
version "1.1.3"
7981+
resolved "https://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2"
7982+
integrity sha1-ofzMBrWNth/XpF2i2kT186Pme6I=
7983+
79127984
tar@^2.0.0:
79137985
version "2.2.1"
79147986
resolved "http://registry.npm.taobao.org/tar/download/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
@@ -8567,13 +8639,21 @@ webpack-log@^2.0.0:
85678639
ansi-colors "^3.0.0"
85688640
uuid "^3.3.2"
85698641

8570-
webpack-merge@^4.2.1:
8642+
webpack-merge@^4.1.0, webpack-merge@^4.2.1:
85718643
version "4.2.1"
85728644
resolved "http://registry.npm.taobao.org/webpack-merge/download/webpack-merge-4.2.1.tgz#5e923cf802ea2ace4fd5af1d3247368a633489b4"
85738645
integrity sha1-XpI8+ALqKs5P1a8dMkc2imM0ibQ=
85748646
dependencies:
85758647
lodash "^4.17.5"
85768648

8649+
webpack-sources@^1.0.1:
8650+
version "1.4.3"
8651+
resolved "https://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.4.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-sources%2Fdownload%2Fwebpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933"
8652+
integrity sha1-7t2OwLko+/HL/plOItLYkPMwqTM=
8653+
dependencies:
8654+
source-list-map "^2.0.0"
8655+
source-map "~0.6.1"
8656+
85778657
webpack-sources@^1.1.0, webpack-sources@^1.3.0:
85788658
version "1.3.0"
85798659
resolved "http://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85"
@@ -8801,6 +8881,27 @@ wrappy@1:
88018881
resolved "http://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
88028882
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
88038883

8884+
write-file-atomic@^2.0.0:
8885+
version "2.4.3"
8886+
resolved "https://registry.npm.taobao.org/write-file-atomic/download/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481"
8887+
integrity sha1-H9Lprh3z51uNjDZ0Q8aS1MqB9IE=
8888+
dependencies:
8889+
graceful-fs "^4.1.11"
8890+
imurmurhash "^0.1.4"
8891+
signal-exit "^3.0.2"
8892+
8893+
write-json-file@^2.3.0:
8894+
version "2.3.0"
8895+
resolved "https://registry.npm.taobao.org/write-json-file/download/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f"
8896+
integrity sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=
8897+
dependencies:
8898+
detect-indent "^5.0.0"
8899+
graceful-fs "^4.1.2"
8900+
make-dir "^1.0.0"
8901+
pify "^3.0.0"
8902+
sort-keys "^2.0.0"
8903+
write-file-atomic "^2.0.0"
8904+
88048905
write@1.0.3:
88058906
version "1.0.3"
88068907
resolved "http://registry.npm.taobao.org/write/download/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3"

0 commit comments

Comments
 (0)