nvi*_*oli 3 javascript synchronous gulp
我有两个文件集,让我们称他们base
和mods
.该mods
文件覆盖base
文件,所以当我运行相关一口任务base
,我需要运行mods
后直接任务.我的设置是这样的:
gulp.task('base',function(){
return gulp.src('base-glob')
.pipe(...)
.pipe(gulp.dest('out-glob'))
});
gulp.task('mods',function(){
return gulp.src('mods-glob')
.pipe(...)
.pipe(gulp.dest('out-glob'))
});
Run Code Online (Sandbox Code Playgroud)
所以我想mods
在完成任务时运行base
任务.请注意,这与定义base
为依赖关系不同mods
,因为如果我只更改mods
文件,我只需要运行mods
任务.我不想使用插件.
我一直在阅读有关回调函数和同步任务的其他建议的文档,但似乎无法理解它.
我知道你不想使用插件,但gulp无法在没有插件的情况下按顺序运行一系列任务.Gulp 4会,但与此同时,权宜之计解决方案是运行序列插件.
gulp.task('all', function() {
runSequence('base', 'mods');
});
Run Code Online (Sandbox Code Playgroud)
这可确保任务按顺序运行,而不是无序依赖.
现在设置一个手表:
gulp.task('watch', function() {
gulp.watch('base-glob', ['all']);
gulp.watch('mods-glob', ['mods']);
});
Run Code Online (Sandbox Code Playgroud)
每当base-glob
更改时,gulp将运行all
任务,base
然后运行序列mods
.
每当mods-glob
改变时,gulp将只运行mods
任务.
听起来不对劲?
归档时间: |
|
查看次数: |
6162 次 |
最近记录: |