gulp.watch不按顺序运行任务

目的

创buildgulp.watch任务以按特定顺序运行其他任务

为什么这不是重复的

许多人build议我看一下如何依次运行Gulp任务 。 然而,这个问题集中在gulp.task而我的问题集中在gulp.watch

我正在寻找的解决scheme是使用gulp.watch来实现我之后的同步效果。 如果这是不可能的,我会回落到gulp.task

背景

我有一个小项目,我有一些testing文件,以及吞咽gulp-complexity插件。 我希望先运行testing文件,然后每次更改JavaScript文件时运行gulp-complexity插件。

我曾经尝试过

我阅读文档,看到以下教程:

  • https://github.com/gulpjs/gulp/blob/master/docs/API.md
  • https://www.smashingmagazine.com/2014/06/building-with-gulp/

他们是非常好的,但我仍然不明白我怎么可以有一个gulp.watch任务同步运行任务(以特定的顺序),而不是asynchronous运行它们。

这是我到目前为止:

 var gulp = require("gulp"); var mocha = require("gulp-mocha"); var complexity = require("gulp-complexity"); gulp.task("test", function(){ gulp .src("./test.js") .pipe(mocha()) .on("error", function(){ this.emit("end"); }); }); gulp.task("complexity", ["test"], function(){ gulp.src('*.js').pipe(complexity()); }); gulp.task("watch", function(){ gulp.watch("./*.js", ["test", "complexity"]); }); 

我在这里做错了什么?

请记住,我还是很新的(今天开始学习!),所以对我的问题的任何解释将受到欢迎!

这是一个问题 ,应该在gulp 4.0中修复

现在,尝试run-sequence [ https://www.npmjs.com/package/run-sequence ]