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 是否成功执行??

gulp node.js

⑨⑨⑨皮炎平 9 years, 9 months ago

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


 javascript


 var 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 来监听任务异常。

花甲护航绿坝娘 answered 9 years, 9 months ago

Your Answer