1

我写的 gulpfile.js 是Common gulpfile.js

在一个build任务中,inject应该将所有静态文件注入到 html 输出中,但它在干净的构建中没有注入任何东西,我必须运行相同的命令(这里是gulp -p project build)两次(gulp -p project build && gulp -p project build)才能成功注入它们。

我试过使用run-sequence,它没有任何帮助。

这是一个错误吗?

谢谢 :)

4

1 回答 1

1

您的 gulp 任务似乎没有返回它们的流。如果您不从任务返回流,则任何其他依赖于它的任务都不会等待异步行为完成后再运行。

所以或多或少,你看到的是你有两个层次的事情必须发生:首先你的“脚本”、“风格”和“资产”任务需要完成,然后当一切准备就绪时你的“视图”任务可以完成它的工作。第一次运行它时,所有四个任务几乎同时运行(因此“查看”运行旧的“资产”结果等)

要修复它,只需在每个任务中返回工作流:

gulp.task('style', ['check'], function () {
  var less_filter = gulpFilter('**/*.less');
  return gulp.src(path_current.src_path_style)
             .pipe(less_filter)
             // ... the rest of your pipes
             .pipe(browserSync.reload({stream:true}));
});
于 2015-06-04T14:07:03.623 回答