Gulp插件之run-sequence控制任务顺序或者并行执行

Posted 前端开发自留地

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gulp插件之run-sequence控制任务顺序或者并行执行相关的知识,希望对你有一定的参考价值。

Gulp中的任务是并行异步执行

Gulp默认将所有任务并行异步执行,显而易见在效率上是有明显的提升。

假如我有一个想处理完一些特定任务后,再执行ftp上传任务。

gulp.task('upload',['sass','html','image','ftp']);


看见了有木有?特定的任务还没执行完,ftp任务就已经执行了,显然这不是我们想要的。

run-sequence

run-sequence的作用就是控制多个任务进行顺序或者并行执行。

安装

npm install run-sequence --save-dev

使用

const runSequence = require('run-sequence');
gulp.task('upload',()=>{
   runSequence(['sass','html','image'],'ftp');
});

runSequence圆括号里面的是串行顺序执行,中括号里面的是并行执行,这样的任务依赖关系就显现出来了。

注意事项:特定任务应该全部是return gulp.src(...),不然还是并行执行,如果不写return就达不到我们期望的串行顺序执行。

gulp4.0方案

gulp4.0还没有正式发布,目前是3.9.1。

gulp.task('upload', gulp.series(gulp.parallel('sass','html','image'), 'ftp'));

series里的任务是顺序执行的,parallel里的任务是同时执行的。

以上是关于Gulp插件之run-sequence控制任务顺序或者并行执行的主要内容,如果未能解决你的问题,请参考以下文章

gulp同步执行任务

Gulp 同步任务问题

gulp常用插件之gulp-sourcemaps使用

gulp-connect插件浏览器实时同步刷新

run-sequence

Gulp 任务未按顺序运行