Gulp imagemin - 只优化一张图片
Gulp imagemin - optimize only one image
此代码运行良好,它将优化文件夹中的所有图像,如果我需要使用 gulp images
手动调用任务,这没问题。
但通常我只是做 gulp watch
并且之前添加的所有图像都不需要重新优化。
那么,gulp 如何只优化刚刚添加到文件夹中的图像,而不是所有图像?
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']);
});
gulp-changed 应该可以达到这个目的。
基本上它比较文件的最后修改 属性 如果源比目标更新,他将它传递到流中,否则从中删除。
此代码运行良好,它将优化文件夹中的所有图像,如果我需要使用 gulp images
手动调用任务,这没问题。
但通常我只是做 gulp watch
并且之前添加的所有图像都不需要重新优化。
那么,gulp 如何只优化刚刚添加到文件夹中的图像,而不是所有图像?
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']);
});
gulp-changed 应该可以达到这个目的。
基本上它比较文件的最后修改 属性 如果源比目标更新,他将它传递到流中,否则从中删除。