Skip to content

Commit 9155c57

Browse files
committed
build: 优化打包配置
1 parent 4be8286 commit 9155c57

File tree

4 files changed

+86
-15
lines changed

4 files changed

+86
-15
lines changed

docs-src/.vuepress/config.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,14 @@ module.exports = {
1515
config.resolve.alias
1616
.set('@', resolve('src'))
1717
.set('@lib', resolve('dist'))
18+
19+
config.module
20+
.rule('vue')
21+
.use('vue-loader')
22+
.loader('vue-loader')
23+
.tap(options => {
24+
options.compilerOptions.preserveWhitespace = false
25+
return options
26+
})
1827
}
1928
}

package-lock.json

Lines changed: 48 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
"name": "json-tree",
33
"version": "1.0.0",
44
"description": "JSON tree view for Vue",
5-
"main": ".eslintrc.js",
5+
"main": "lib/JsonTree.common.js",
66
"scripts": {
7-
"lib": "vue-cli-service build --target lib --name JsonTree --dest dist src/index.js",
7+
"lib": "vue-cli-service build --target lib --name JsonTree --dest lib src/index.js",
88
"publish": "npm run lib && npm publish --registry https://www.npmjs.com/",
99
"docs": "vuepress dev docs-src"
1010
},
@@ -43,6 +43,7 @@
4343
"lint-staged": "^10.5.1",
4444
"sass": "^1.29.0",
4545
"sass-loader": "^10.1.0",
46+
"uglifyjs-webpack-plugin": "^2.2.0",
4647
"vue": "^2.6.12",
4748
"vue-template-compiler": "^2.6.12",
4849
"vuepress": "^1.7.1"

vue.config.js

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
const path = require('path')
1+
const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
2+
// const path = require('path')
23

3-
const resolve = dir => path.join(__dirname, '.', dir)
4+
// const resolve = dir => path.join(__dirname, '.', dir)
45

56
module.exports = {
67
// 修改 src 目录 为 examples 目录
@@ -11,20 +12,32 @@ module.exports = {
1112
filename: 'index.html'
1213
}
1314
},
15+
configureWebpack: config => {
16+
if (process.env.NODE_ENV === 'production') {
17+
config.optimization.minimizer.push(
18+
new UglifyJsPlugin({
19+
uglifyOptions: {
20+
warnings: false,
21+
compress: {
22+
drop_debugger: true,
23+
drop_console: true
24+
}
25+
},
26+
sourceMap: true,
27+
parallel: true
28+
})
29+
)
30+
}
31+
},
1432
chainWebpack: config => {
15-
// config.resolve.alias
16-
// .set('@', resolve('examples'))
17-
// .set('@lib', resolve('dist'))
18-
1933
config.module
20-
.rule('js')
21-
.include
22-
.add(resolve('src'))
23-
.end()
24-
.use('babel')
25-
.loader('babel-loader')
34+
// vue-template-compiler 去掉标签之间的空格
35+
// https://github.com/vuejs/vue-docs-zh-cn/blob/master/vue-template-compiler/README.md#%E9%80%89%E9%A1%B9
36+
.rule('vue')
37+
.use('vue-loader')
38+
.loader('vue-loader')
2639
.tap(options => {
27-
// 修改它的选项...
40+
options.compilerOptions.preserveWhitespace = false
2841
return options
2942
})
3043

0 commit comments

Comments
 (0)