2017-03-17 58 views
0
gulp.task('build', function() { 
    // Build, generate files... 
}); 

gulp.task('clear', function() { 
    // Delete generated files. 
}); 

gulp.task('rebuild', function() { 
    // First: clear 
    // Then: build 
}); 

在大多数情况下,“构建”任务不需要移除先前生成的文件(这会减慢构建过程)。如何在gulp中创建“重建”任务?

但是有次,当我想在一个命令来运行“清除”和“建设”的任务:

当然,“重建”任务取决于“清除”和“建”,但如果我使用依赖提示像

gulp.task('rebuild', ['clear', 'build']); 

两个任务异步运行,这会导致意想不到的问题!


最简单的办法来解决这个问题是运行:

gulp clear 
gulp build 

但单一的命令

gulp rebuild 

比较容易,对不对? :P

顺便说一句,gulp.series()已被弃用...

回答

1

它并不完美,但应该工作。将构建任务解压缩到一个函数中。然后执行构建和重建任务。

var build = function() { 
    return gulp.src().concat(); 
} 

gulp.task('build', function() { 
    return build(); 
}); 

gulp.task('clear', function() { 
    // Delete generated files. 
}); 

gulp.task('rebuild', ['clear'], function() { 
    return build(); 
}); 
0

我的解决方案是无法通过咕嘟咕嘟按照您的要求,但NPM可能是一个更好的选择,因为你可能有NPM那里得心应手。你所要做的只是保存一些按键。

添加NPM脚本 “RG”(重建-一饮而尽),它确实你需要:

"scripts": { 
    "rg": "gulp clear && gulp build" 
} 

调用与npm run rg