Задача Gulp Watch, несколько папок с цепочкой - PullRequest
0 голосов
/ 26 апреля 2018

Почему это работает

gulp.task("watch", ["browser-sync"], function() {
  gulp.watch(
    ["node_modules/bootstrap/scss/bootstrap.scss", "src/scss/*.scss"],
    ["sass"],
  );
  gulp.watch("src/*.html").on("change", browserSync.reload);
});

Но это не работает:

gulp.task("watch", ["browser-sync"], function() {
  gulp.watch(
    ["node_modules/bootstrap/scss/bootstrap.scss", "src/scss/*.scss"],
    ["sass"],
    ["src/*.html"]
  ).on("change", browserSync.reload);
});

Хммм, спасибо заранее!

1 Ответ

0 голосов
/ 26 апреля 2018

Gulp.watch имеет эту декларацию:

gulp.watch(glob[, opts], tasks)

См. Документацию gulp.watch . У вас есть

gulp.watch(
    ["node_modules/bootstrap/scss/bootstrap.scss", "src/scss/*.scss"],
    ["sass"],
    ["src/*.html"]

, что эквивалентно

gulp.watch(glob, task, glob)

, что просто запрещено. Вы можете исправить это, выполнив что-то вроде:

gulp.task("watch", ["browser-sync"], function() {
  gulp.watch(
    ["node_modules/bootstrap/scss/bootstrap.scss", "src/scss/*.scss"],
    ["sass"]);
  gulp.watch(["src/*.html"]).on("change", browserSync.reload);
});

, а затем поместите вызов перезагрузки в конце задачи 'sass'.

...