使用gulp-rev和gulp-inject输出静态脚本:文件未在干净构建中注入

时间:2015-02-26 12:00:57

标签: gulp gulp-inject

我写的gulpfile.js是Common gulpfile.js

build任务中,inject应该将所有静态文件注入到html输出中,但它在clean构建中不会注入任何内容,我必须运行相同的命令(这里是gulp -p project build)两次(gulp -p project build && gulp -p project build)为他们注入成功。

我尝试过使用run-sequence,它没什么帮助。

这是一个错误吗?

谢谢:)

1 个答案:

答案 0 :(得分:1)

你的gulp任务似乎没有返回他们的流。如果不从任务返回流,则依赖于该任务的任何其他任务将不会等待异步行为在运行之前完成。

或多或少,你所看到的是你有两个层面的事情必须发生:首先是你的脚本","样式"和& #34;资产"任务需要完成,然后当所有事情都准备就绪时,您需要查看"任务可以做它的工作。第一次运行它时,所有四个任务几乎同时运行(因此"查看"运行旧的"资产"结果等)

要解决此问题,只需在每项任务中返回工作流:

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}));
});