Gulp 运行 不对

Gulp isn't running right

我有这个任务:

如果我 运行 gulp build 然后 gulp html,一切正常。但是,如果添加 html 作为构建的最后一部分,则不要再工作了。 Jade 在 .html 文件中转换,所有资源(my 和 bower)都复制到 /dest 文件夹,但是 wiredepinject(添加脚本和 link标签)似乎什么都不做。

这是我的(部分)任务:https://gist.github.com/Falci/f52d4144318c9d5e4c2f

我发现您的构建存在一些潜在问题。

  1. 您必须 return 来自每个任务的流。 Gulp 依赖于每个任务的 return 值来确定该任务何时完成。如果您使用一个没有 return 值的任务作为另一个任务的依赖项,该依赖项将立即被解析,而不是等待任务完成。您应该使用 return 值而不是使用 next() 回调。

    function htmlAssetsTask () {
        var sources = gulp.src(config.filesets.assetsDest, {read: false});
        return gulp.src(config.filesets.html)
        ...
    }
    
  2. Gulp 任务依赖性 没有按顺序 运行 。这意味着在任务中:

    gulp.task('build', ['clean:dest', 'build:js', 'build:less', 'html']);
    

    依赖项可以 运行 以任何顺序排列。我建议在重要的时候使用 run-sequence 包来确保任务依赖的顺序。