每天五分钟之IT技能包

gulp插件(12) - run-sequence(同步执行任务

2017-10-25  本文已影响8人  学好该死的程序

功能描述

gulp默认使用最大并发数执行任务,也就是说所有的任务几乎都是同时执行,而不会等待其它任务。但很多时候,任务是需要有先后次序的,比如要先清理目标目录,然后再执行打包。
run-sequence 的作用就是控制多个任务进行顺序执行或者并行执行
gulp-run-sequence 也是实现相同功能,但已经被标记为deprecated


插件安装

$ cnpm install run-sequence --save-dev

使用方法

执行前端代码自动构建,一般会分为以下几个步骤

  1. 清理目标目录(任务:clean)
  2. 代码压缩打包,这其中包括对JS,CSS,HTML以及图片的处理(任务:minify:js,minify:css,minify:html,minify:image)
  3. 监控(任务:watch)

首先执行第一步操作,清理目标目录,清理完成后方可执行打包动作。

然后执行第二步操作,这个步骤里又可以细分为几个任务,但是几个任务相互之间并没有依赖关系,因此可以并行。

最后执行第三步操作,监控代码变改,必须在第二步所有任务全部执行完成后方可执行

最终代码

var gulp        = require('gulp'),
    runSequence = require('run-sequence'),
    pump        = require('pump');

gulp.task('default', function(cb) {
    runSequence(
        'clean', // 第一步:清理目标目录
        ['minify:js', 'minify:css', 'minify:html', 'minify:image'], // 第二步:打包 
        'watch', // 第三步:监控
        cb
    );
});
上一篇下一篇

猜你喜欢

热点阅读