Gulp Watch снова выполняет все задачи, а не только те, которые были изменены - PullRequest
0 голосов
/ 20 июня 2019

У меня проблемы с Gulp Watch, когда он обрабатывает только файлы, которые были изменены

Когда я начинаю, Gulp выполняет задачи правильно, но когда я делаю изменения, часы Gulp снова выполняют все задачи, а не только те, которые были изменены. Я не знаю, в чем может быть проблема, не могли бы вы мне помочь?

// Watch Task: watch SCSS and JS files for changes
// If any change, run scss and js tasks simultaneously

function watchTask() {
    watch([files.htmlPath, files.scssPath, files.mincssPath, files.cssPath, files.minjsPath, files.jsPath, files.imgPath], 
        parallel(htmlTask, siteTask, series(scssTask, cleanTask, concatCSS), series(jsminTask, jsTask), imgTask));    
}

// Export the default Gulp task so it can be run
// Runs the scss and js tasks simultaneously
// then runs cacheBust, then watch task

exports.default = series(
    parallel(htmlTask, siteTask, series(scssTask, cleanTask, concatCSS), series(jsminTask, jsTask), imgTask), 
    cacheBustTask,
    watchTask
);

1 Ответ

1 голос
/ 20 июня 2019

Для достижения вашей цели вы должны создать отдельные функции наблюдения и запускать их параллельно.

Что-то в этом роде:

exports.watch = gulp.parallel(watch_html, watch_scss,...);

function watch_html() {
    return gulp.watch(files.htmlPath, htmlTask);
}

function watch_scss(){
    return gulp.watch(files.scssPath, series(scssTask, cleanTask, concatCSS));
}
...