Skip to content

Commit 312b47c

Browse files
committed
update build script
1 parent 4174ac3 commit 312b47c

File tree

3 files changed

+47
-28
lines changed

3 files changed

+47
-28
lines changed

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,4 @@ explorations
55
TODOS.md
66
*.log
77
docs/_book
8-
dist/vue-router.js.map
9-
dist/vue-router.common.js
8+
dist/vue-router.min.js.gz

build/build.js

Lines changed: 45 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
var fs = require('fs')
2+
var zlib = require('zlib')
23
var rollup = require('rollup')
34
var uglify = require('uglify-js')
45
var babel = require('rollup-plugin-babel')
@@ -14,35 +15,54 @@ rollup.rollup({
1415
entry: 'src/index.js',
1516
plugins: [
1617
babel({
17-
exclude: 'node_modules/**',
18-
loose: 'all',
19-
sourceMap: true
18+
loose: 'all'
2019
})
2120
]
22-
}).then(function (bundle) {
23-
bundle.write({
24-
format: 'cjs',
25-
dest: 'dist/vue-router.common.js'
26-
}).then(function () {
27-
console.log('built: dist/vue-router.common.js')
28-
})
29-
return bundle.write({
21+
})
22+
.then(function (bundle) {
23+
return write('dist/vue-router.js', bundle.generate({
3024
format: 'umd',
3125
banner: banner,
32-
moduleName: 'VueRouter',
33-
sourceMap: true,
34-
dest: 'dist/vue-router.js'
35-
})
36-
}).then(function () {
37-
console.log('built: ' + 'dist/vue-router.js')
38-
fs.writeFile(
26+
moduleName: 'VueRouter'
27+
}).code)
28+
})
29+
.then(function () {
30+
return write(
3931
'dist/vue-router.min.js',
40-
banner + '\n' + uglify.minify('dist/vue-router.js').code,
41-
function (err) {
42-
if (err) throw err
43-
console.log('built: ' + 'dist/vue-router.min.js')
44-
}
32+
banner + '\n' + uglify.minify('dist/vue-router.js').code
4533
)
46-
}).catch(function (e) {
47-
console.log(e)
4834
})
35+
.then(function () {
36+
return new Promise(function (resolve, reject) {
37+
fs.readFile('dist/vue-router.min.js', function (err, buf) {
38+
if (err) return reject(err)
39+
zlib.gzip(buf, function (err, buf) {
40+
if (err) return reject(err)
41+
write('dist/vue-router.min.js.gz', buf).then(resolve)
42+
})
43+
})
44+
})
45+
})
46+
.catch(logError)
47+
48+
function write (dest, code) {
49+
return new Promise(function (resolve, reject) {
50+
fs.writeFile(dest, code, function (err) {
51+
if (err) return reject(err)
52+
console.log(blue(dest) + ' ' + getSize(code))
53+
resolve()
54+
})
55+
})
56+
}
57+
58+
function getSize (code) {
59+
return (code.length / 1024).toFixed(2) + 'kb'
60+
}
61+
62+
function logError (e) {
63+
console.log(e)
64+
}
65+
66+
function blue (str) {
67+
return '\x1b[1m\x1b[34m' + str + '\x1b[39m\x1b[22m'
68+
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "vue-router",
33
"version": "0.7.7",
44
"description": "A router for Vue.js",
5-
"main": "dist/vue-router.common.js",
5+
"main": "dist/vue-router.js",
66
"jsnext:main": "src/index.js",
77
"files": [
88
"dist",

0 commit comments

Comments
 (0)