gulp中有没有办法监听task执行成功或者失败的状态

代码如下:
gulp.task('copyfonts',function(){
return gulp.src(staticConfig['fonts'] + '/')
.pipe(gulp.dest('./dist/fonts/'));
})

然后我想监控 copyfonts 任务是否成功
gulp.task('aaa', ['copyfonts'],function(err){
console.log(err)
});

此时没有输出

假如改成一个不存在地址:
gulp.task('copyfonts',function(){
return gulp.src(staticConfig['foxxxnts'] + '/')
.pipe(gulp.dest('./dist/fonts/'));
})

还是没有输出!

问题是如何监控copyfonts 是否成功执行??

阅读 6.6k
1 个回答

gulp的任务系统是基于orchestrator。提供了start,stop,err,task_start,task_stop,task_err,task_not_found,task_recursion几个事件。
可以像下面这样监听

javascriptvar gulp = require('gulp');

gulp.task('default',function(){
    return gulp.src('./**/*.*')
    .pipe()
}).on('task_start',function(){
    console.log('start');
}).on('task_err',function(err){
    console.log('error');
}).on('task_stop',function(){
    console.log('stop');
});

也有现成的插件gulp-plumber来监听任务异常。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题