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

时间:2015-09-07 09:48:54

标签: node.js gulp watch

我是gulp的新手,我正在尝试观看jade和更少的文件,并在移动新文件之前清理构建目录。不知怎的,这个任务第一次工作时我改变了一个文件然后就不再继续观看了。 我找到了许多不同的解决方案,但它们都没有为我工作。 以下是我的观察任务:

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'));
});

对于管道工,我得到错误“未定义不是函数”。

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

1 个答案:

答案 0 :(得分:1)

对于遇到相同问题的每个人:如果使用相对路径,gulp.watch只会检测新文件或已删除文件。例如:使用“less”而不是“./less”。现在一切都应该像魅力一样。