2016-07-01 18 views
0

此代码工作完美,它将优化文件夹中的所有图像,如果我需要使用gulp images手动调用任务,那就没问题。 但通常我只是做gulp watch,因为之前添加的所有图像不需要重新优化。Gulp imagemin - 只优化一个图像

那么,怎么才能优化刚刚添加到文件夹的图像,而不是所有的图像呢?

gulp.task('images', function() { 
    gulp.src('images/src/*.{png,jpg,gif}') 
    .pipe(plumber(plumberErrorHandler)) 
    .pipe(imagemin({ 
     optimizationLevel: 7, 
     progressive: true 
    })) 
    .pipe(gulp.dest('images')) 
    .pipe(notify("Images optimized.")); 
}); 

gulp.task('watch', function() { 
    gulp.watch('images/src/*.{png,jpg,gif}', ['images']); 
}); 

回答

1

gulp-changed应该达到这个目的。

基本上,它比较文件的上次修改的属性,如果源比目标更新,则将其传递到流中,否则将其从中删除。