2016-07-01 8 views
0

このコードは完全に動作しています。フォルダ内のすべての画像を最適化します。gulp imagesを使用して手動でタスクを呼び出す必要がある場合は問題ありません。 しかし、通常は私はちょうどgulp watchを実行します。以前に追加されたすべての画像を再最適化する必要はありません。Gulp imagemin - 1画像のみを最適化する

どのようにして、フォルダに追加されたばかりの画像のみを最適化することができますか?

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がこの目的に役立ちます。

基本的には、ソースがストリームを渡すデスティネーションより新しい場合はファイルの最終変更プロパティを比較し、そうでない場合はストリームから削除されます。

関連する問題