2014-09-06 123 views
1

我看更改的文件是这样的:咕嘟咕嘟手表退出

gulp.watch(['./src/js/**/*', './src/templates/**/*', config.vendor.js], ['js']); 

我的构建过程的一部分涉及使用“角文件排序”模块(不要以为这是虽然重要)。如果我执行任务如下,管道工,当文件排序失败一饮而尽不会退出,“观看”将继续检查更新这正是我想要的:

gulp.task('js', function() { 
    gulp.src('./src/js/**/*.js').pipe(plumber()).pipe(angularFilesort()); 
}); 

不过,如果我包在这个过程中streamqueue,gulp将退出当filesort失败,我不想要:

gulp.task('js', function() { 
    streamqueue({ 
    objectMode: true 
    }, 
    gulp.src('./src/js/**/*.js').pipe(plumber()).pipe(angularFilesort()) 
    ) 
}); 

我该如何解决这个问题?

具体地说,我做这样的事情来处理3套不同的JavaScript文件然后concating他们:

streamqueue({ 
    objectMode: true 
}, 
gulp.src(config.vendor.js), 
gulp.src('./src/js/**/*.js').pipe(angularFilesort()), 
gulp.src(['src/templates/**/*.html']).pipe(templateCache({ 
    module: mainAngularModuleName 
}))) 
.pipe(sourcemaps.init()) 
.pipe(concat('app.js')) 
etc. 

有可能是一种方法,我可以做到上面没有streamqueue来解决这个问题?

回答

0

我发现重新安装节点并升级所有我的软件包解决了这个问题。

1

我有一个类似的问题,并从streamqueue切换到stream-series为我解决它。由于不需要指定对象模式,因此它比流化清晰。