Skip to content

Commit d80c3a0

Browse files
committed
feat(progressBarPlugin.js): 现在ykit server能够在控制台中显示每次build的时间了。
1 parent c021293 commit d80c3a0

File tree

2 files changed

+15
-7
lines changed

2 files changed

+15
-7
lines changed

lib/plugins/progressBarPlugin.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,13 @@ var moment = require('moment');
77
module.exports = new ProgressBarPlugin();
88

99
function ProgressBarPlugin() {
10+
var startTime = null;
11+
var endTime = null;
1012
return new webpack.ProgressPlugin(function (percent, msg) {
1113
if (percent === 0) {
1214
spinner.text = 'building...';
1315
spinner.start();
16+
startTime = Date.now();
1417
}
1518

1619
if (msg) {
@@ -21,8 +24,9 @@ function ProgressBarPlugin() {
2124
spinner.render();
2225
}
2326
} else {
27+
endTime = Date.now();
2428
var dateFormat = 'YY.MM.DD HH:mm:ss';
25-
spinner.text = '\x1b[90m' + '[' + moment().format(dateFormat) + '] build complete!' + '\x1b[0m';
29+
spinner.text = '\x1b[90m' + '[' + moment().format(dateFormat) + '] build complete in ' + (endTime - startTime) + 'ms.';
2630
spinner.stopAndPersist(logSymbols.info);
2731
spinner.text = '';
2832
}

src/plugins/progressBarPlugin.js

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,26 @@ const moment = require('moment');
55
module.exports = new ProgressBarPlugin();
66

77
function ProgressBarPlugin() {
8-
return new webpack.ProgressPlugin(function(percent, msg) {
9-
if(percent === 0) {
8+
let startTime = null;
9+
let endTime = null;
10+
return new webpack.ProgressPlugin(function (percent, msg) {
11+
if (percent === 0) {
1012
spinner.text = 'building...';
1113
spinner.start();
14+
startTime = Date.now();
1215
}
1316

14-
if(msg) {
15-
if(msg !== 'emit') {
17+
if (msg) {
18+
if (msg !== 'emit') {
1619
spinner.text = '[Bundler] ' + msg;
1720

18-
if(msg.indexOf('optimize') > -1) {
21+
if (msg.indexOf('optimize') > -1) {
1922
spinner.render();
2023
}
2124
} else {
25+
endTime = Date.now();
2226
const dateFormat = 'YY.MM.DD HH:mm:ss';
23-
spinner.text = '\x1b[90m' + '[' +moment().format(dateFormat) +'] build complete!' + '\x1b[0m';
27+
spinner.text = '\x1b[90m' + '[' + moment().format(dateFormat) + '] build complete in ' + (endTime - startTime) + 'ms.';
2428
spinner.stopAndPersist(logSymbols.info);
2529
spinner.text = '';
2630
}

0 commit comments

Comments
 (0)