gulp.watch 第一次更改后任务崩溃

gulp.watch task crashes after first change

我是 gulp 的新手,我正在尝试观看 jade 和 less 文件并在移动新文件之前清理构建目录。不知何故,我第一次更改文件时该任务有效,然后它就不再继续观看了。 我找到了许多不同的解决方案,但其中 none 对我有用。 这是我的手表任务:

gulp.task('watch', function() {
   gulp.watch(config.lessDir + '/**.less', ['css']);
   gulp.watch(config.jadeDir + '/**.jade', ['jade']);
});

gulp.task('jade', function() {
   del.sync(['build/**.html']);

   return gulp.src(config.jadeDir + '/**.jade')
   .pipe(jade({ pretty: true }))
   .pipe(gulp.dest('./build'));
});

gulp.task('css', function() {
   del.sync(['build/css/**.*']);

   return gulp.src(config.lessDir + '/**.less')
   .pipe(less())
   .pipe(gulp.dest('./build/css'))
   .pipe(minifyCSS())
   .pipe(extReplace('.min.css'))
   .pipe(gulp.dest('./build/css'));
});

使用管道工时我得到错误 "undefined is not a function"。

编辑:似乎 del 不是问题,而是处理 jade/less 文件的管道。

对于遇到相同问题的所有人:gulp.watch 仅在使用相对路径时检测新文件或已删除文件。例如:使用 "less" 而不是“./less”。现在一切都应该像魅力一样工作。