我有一个 Gulp 构建任务,由其他类似于这个的构建任务组成:
gulp.task('build', ['build-html', 'build-css', 'build-js', 'build-images']);
我对这件事的厌恶在于,build
任务在依赖项完成之后才运行:
Starting 'build-html'...
Finished 'build-html' after 1 s
Starting 'build-css'...
Finished 'build-css' after 1 s
Starting 'build-js'...
Finished 'build-js' after 1 s
Starting 'build-images'...
Finished 'build-images' after 1 s
Starting 'build'...
Finished 'build' after 1 ms
很明显,build
不应该在它的依赖未完成之前运行,所以它按照预期工作。但这会导致控制台显示build
只花费了1毫秒的时间,而实际上它应该显示花费了4秒的时间,因为它的所有依赖都需要那么长时间。如果能像下面这样就好了:
Starting 'build'...
Starting 'build-html'...
Finished 'build-html' after 1 s
Starting 'build-css'...
Finished 'build-css' after 1 s
Starting 'build-js'...
Finished 'build-js' after 1 s
Starting 'build-images'...
Finished 'build-images' after 1 s
Finished 'build' after 4 s
注意,
build
是第一个“开始”的东西,然后所有依赖项运行,最后build
完成。所以我在想,是否可以不使用任务依赖性,而是从
build
任务内部逐个调用每个任务?如果可以,我应该使用什么命令?这是一个不好的主意吗?有没有更好的解决方法?