有什么办法可以告诉Gulp什么时候完成任务?即,像“完成”发射等?
或者甚至在手表上完成所有更改?
我想只在完成所有操作时运行livereload(),因此我不需要多次livereload(),所以重新加载发生在所有TS文件完全编译之后。
我看到了这个SE问题,Can I set gulp livereload to run after all files are compiled?但他使用的方法我找不到任何文档, gulp.isRunning
概要的GULP文件:
gulp.task( 'compile:typescript', function () {
var tsResult = tsProject
.src() // instead of gulp.src(...)
.pipe( sourcemaps.init() )
.pipe( ts( tsProject ) );
return tsResult.js
.pipe( sourcemaps.write( '.', {includeContent: false, sourceRoot: './app'} ) )
.pipe( gulp.dest( args.dest ? gconfig[args.dest].js : gconfig.dev.js ) )
;
} )
;
gulp.task( 'watch', function () {
livereload.listen();
gulp.watch( [gconfig.source.typescript], ['compile:typescript'] );
} );
process.on('exit',function(){
livereload.reload(gconfig.source.index);
});