@Taverna-MO

Gulp таск выполняется 3 раза, почему?

Добрый день. Есть вот такой вот таск
gulp.task('img:build', function (cb) {
    return gulp.src(['./src/images/**/*.{png,jpg}', '!./src/images/sprites/**/*', '!./src/images/temp/**/*'])
	.pipe(tinypng({
		key: path.tiny,
		sigFile: '.tinypng-sigs',

        summarise: true
    }))
	.pipe(plumber())
	.pipe(gulp.dest(path.build.img));
});


И вочер
gulp.task('watch', function () {
	watch(['./src/images/**/*.{png,jpg}', '!./src/images/temp/**/*', '!./src/images/sprites/**/*'], function(event, cb) {
        gulp.start('img:build');
    });
});


Когда переношу в папку images изображение первый раз отрабатывает 1 раз (т.к. сжимает через tinypng, но если удалить файл и потом его еще раз закинуть в папку то он же уже не сжимается (хранится в кеше) и таск отрабатывает 3 раза
[16:59:09] Starting 'img:build'...
[16:59:09] gulp-tinypng-compress Skipped: 5 images, Compressed: 0 images, Savings: 0.00 B (ratio: 0)
[16:59:09] Finished 'img:build' after 49 ms
[16:59:10] Starting 'img:build'...
[16:59:10] gulp-tinypng-compress Skipped: 5 images, Compressed: 0 images, Savings: 0.00 B (ratio: 0)
[16:59:10] Finished 'img:build' after 9.89 ms
[16:59:10] Starting 'img:build'...
[16:59:10] gulp-tinypng-compress Skipped: 5 images, Compressed: 0 images, Savings: 0.00 B (ratio: 0)
[16:59:10] Finished 'img:build' after 6.41 ms


Не могу понять, с чем это может быть связано?
Если отключить сжатие через тинипнг, ничего не меняется
  • Вопрос задан
  • 236 просмотров
Пригласить эксперта
Ответы на вопрос 1
IvanBlacky
@IvanBlacky
back-end разработчик
Каково значение переменной path.build.img? Возможно, watcher отслеживает эту директорию
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы