Skip to content

Commit c814175

Browse files
committed
perf(pack): 优化 pack log
1 parent 8e4ac72 commit c814175

File tree

2 files changed

+86
-76
lines changed

2 files changed

+86
-76
lines changed

lib/models/Project.js

Lines changed: 40 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -368,45 +368,50 @@ var Project = function () {
368368
cc.exit();
369369
spinner.stop();
370370
logTime('minify complete!');
371-
372-
async.series(self.packCallbacks.map(function (packCallback) {
373-
return function (callback) {
374-
packCallback(opt, stats);
375-
callback(null);
376-
};
377-
}), function (err) {
378-
var statsInfo = stats.toJson({ errorDetails: false });
379-
380-
process.stdout.write('\n' + '\x1b[90m' + '-------------------------- YKIT PACKED ASSETS -------------------------- ' + '\x1b[0m \n\n');
381-
382-
if (statsInfo.errors.length > 0) {
383-
statsInfo.errors.map(function (err) {
384-
error(err.red + '\n');
385-
});
386-
}
387-
if (statsInfo.warnings.length > 0) {
388-
statsInfo.warnings.map(function (warning) {
389-
warn(warning.yellow + '\n');
390-
});
391-
}
392-
393-
var assetsInfo = self.config._config.assetsInfo || statsInfo.assets;
394-
assetsInfo.map(function (asset) {
395-
var size = asset.size > 1024 ? (asset.size / 1024).toFixed(2) + ' kB' : asset.size + ' bytes';
396-
if (!/\.cache$/.test(asset.name)) {
397-
log('- '.gray + asset.name + ' - ' + size);
398-
}
399-
});
400-
401-
var packDuration = Date.now() - packStartTime > 1000 ? Math.floor((Date.now() - packStartTime) / 1000) + 's' : Date.now() - packStartTime + 'ms';
402-
log('Finished in ' + packDuration + '.\n');
403-
404-
callback(err, stats);
405-
});
371+
afterPack();
406372
}
407373
});
408374
});
409375
})();
376+
} else {
377+
afterPack();
378+
}
379+
380+
function afterPack() {
381+
async.series(self.packCallbacks.map(function (packCallback) {
382+
return function (callback) {
383+
packCallback(opt, stats);
384+
callback(null);
385+
};
386+
}), function (err) {
387+
var statsInfo = stats.toJson({ errorDetails: false });
388+
389+
process.stdout.write('\n' + '\x1b[90m' + '-------------------------- YKIT PACKED ASSETS -------------------------- ' + '\x1b[0m \n\n');
390+
391+
if (statsInfo.errors.length > 0) {
392+
statsInfo.errors.map(function (err) {
393+
error(err.red + '\n');
394+
});
395+
}
396+
if (statsInfo.warnings.length > 0) {
397+
statsInfo.warnings.map(function (warning) {
398+
warn(warning.yellow + '\n');
399+
});
400+
}
401+
402+
var assetsInfo = self.config._config.assetsInfo || statsInfo.assets;
403+
assetsInfo.map(function (asset) {
404+
var size = asset.size > 1024 ? (asset.size / 1024).toFixed(2) + ' kB' : asset.size + ' bytes';
405+
if (!/\.cache$/.test(asset.name)) {
406+
log('- '.gray + asset.name + ' - ' + size);
407+
}
408+
});
409+
410+
var packDuration = Date.now() - packStartTime > 1000 ? Math.floor((Date.now() - packStartTime) / 1000) + 's' : Date.now() - packStartTime + 'ms';
411+
log('Finished in ' + packDuration + '.\n');
412+
413+
callback(err, stats);
414+
});
410415
}
411416
});
412417
};

src/models/Project.js

Lines changed: 46 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -343,50 +343,55 @@ class Project {
343343
cc.exit();
344344
spinner.stop();
345345
logTime('minify complete!');
346+
afterPack();
347+
}
348+
});
349+
});
350+
} else {
351+
afterPack();
352+
}
353+
354+
function afterPack() {
355+
async.series(self.packCallbacks.map((packCallback) => {
356+
return function(callback) {
357+
packCallback(opt, stats);
358+
callback(null);
359+
};
360+
}), (err) => {
361+
let statsInfo = stats.toJson({errorDetails: false});
362+
363+
process.stdout.write('\n' +
364+
'\x1b[90m' +
365+
'-------------------------- YKIT PACKED ASSETS -------------------------- ' +
366+
'\x1b[0m \n\n');
367+
368+
if (statsInfo.errors.length > 0) {
369+
statsInfo.errors.map((err) => {
370+
error(err.red + '\n');
371+
});
372+
}
373+
if (statsInfo.warnings.length > 0) {
374+
statsInfo.warnings.map((warning) => {
375+
warn(warning.yellow + '\n');
376+
});
377+
}
346378

347-
async.series(self.packCallbacks.map((packCallback) => {
348-
return function(callback) {
349-
packCallback(opt, stats);
350-
callback(null);
351-
};
352-
}), (err) => {
353-
let statsInfo = stats.toJson({errorDetails: false});
354-
355-
process.stdout.write('\n' +
356-
'\x1b[90m' +
357-
'-------------------------- YKIT PACKED ASSETS -------------------------- ' +
358-
'\x1b[0m \n\n');
359-
360-
if (statsInfo.errors.length > 0) {
361-
statsInfo.errors.map((err) => {
362-
error(err.red + '\n');
363-
});
364-
}
365-
if (statsInfo.warnings.length > 0) {
366-
statsInfo.warnings.map((warning) => {
367-
warn(warning.yellow + '\n');
368-
});
369-
}
370-
371-
const assetsInfo = self.config._config.assetsInfo || statsInfo.assets;
372-
assetsInfo.map((asset) => {
373-
const size = asset.size > 1024
374-
? (asset.size / 1024).toFixed(2) + ' kB'
375-
: asset.size + ' bytes';
376-
if (!/\.cache$/.test(asset.name)) {
377-
log('- '.gray + asset.name + ' - ' + size);
378-
}
379-
});
380-
381-
const packDuration = Date.now() - packStartTime > 1000
382-
? Math.floor((Date.now() - packStartTime) / 1000) + 's'
383-
: (Date.now() - packStartTime) + 'ms';
384-
log('Finished in ' + packDuration + '.\n');
385-
386-
callback(err, stats);
387-
});
379+
const assetsInfo = self.config._config.assetsInfo || statsInfo.assets;
380+
assetsInfo.map((asset) => {
381+
const size = asset.size > 1024
382+
? (asset.size / 1024).toFixed(2) + ' kB'
383+
: asset.size + ' bytes';
384+
if (!/\.cache$/.test(asset.name)) {
385+
log('- '.gray + asset.name + ' - ' + size);
388386
}
389387
});
388+
389+
const packDuration = Date.now() - packStartTime > 1000
390+
? Math.floor((Date.now() - packStartTime) / 1000) + 's'
391+
: (Date.now() - packStartTime) + 'ms';
392+
log('Finished in ' + packDuration + '.\n');
393+
394+
callback(err, stats);
390395
});
391396
}
392397
});

0 commit comments

Comments
 (0)