0
我有一個svg-sprites
gulp任務循環通過我的精靈。其中一些需要縮小,所以我有一個if
在這些精靈上運行縮小任務。添加承諾吞噬任務與forEach
當forEach完成時,我希望它顯示完成。現在它說「完成」的方式太早。我想我應該添加一個承諾,但我不知道如何處理它。幫助讚賞。
var gulp = require('gulp');
var svgSprite = require('gulp-svg-sprite');
var svgmin = require('gulp-svgmin');
gulp.task('svg-sprites', function() {
var stream = '';
config.svgSprites.forEach(function (item) {
stream = gulp.src(item.src + '/**/*.svg');
if(item.doMinify) {
stream.pipe(svgmin({
plugins: [
{
removeAttrs: {
attrs: ['path:fill', 'g:fill']
}
}
]
}))
}
stream.pipe(svgSprite())
.pipe(gulp.dest(normalizePath(item.dest)));
});
return stream;
});