Gulp-inject говорит: "Ничего не вставлять в index.html"

Я пытаюсь вставить некоторые файлы в мой индекс, все они объединены и сведены в папку.tmp следующим образом:

gulp.task('prep-js',['clean'], function(){
  var jspath = './src/page/**/*.js';
  var treatJs = gulp.src(jspath)
         .pipe(plugins.concat('scripts.js'))
         .pipe(plugins.uglify())
         .pipe(gulp.dest('.tmp/page/js'))
});

Но когда я запускаю задачу внедрения, она говорит: "Ничего не вставлять в index.html". Вот код:

gulp.task('inject-deps', ['prep-css', 'prep-js'], function(){

  //select main bower files
  var bowerDep = gulp.src(plugins.mainBowerFiles(), {read: false});

  //inject files
  return  gulp.src('./src/page/index.html')
          .pipe(plugins.inject(bowerDep, {relative: true, name:'bower'}))
          .pipe(plugins.inject(gulp.src('.tmp/page/js/*.js'), {name:'frontjs'}))
          .pipe(plugins.inject(gulp.src('.tmp/page/css/*.css'), {name:'frontcss'}))
          .pipe(gulp.dest('.tmp/page'));
});

Интересно, что первая труба, впрыскивающая основные файлы бауэра, работает отлично, но не происходит со следующими двумя.

Кроме того, просто для информации, плагины - это переменная, которая требует моих плагинов.

Есть идеи по этому вопросу?

1 ответ

Вы должны вернуть поток в вашем prep-js задача:

gulp.task('prep-js',['clean'], function(){
  var jspath = './src/page/**/*.js';
  return gulp.src(jspath)
         .pipe(plugins.concat('scripts.js'))
         .pipe(plugins.uglify())
         .pipe(gulp.dest('.tmp/page/js'))
});

Иначе inject-deps не буду ждать prep-js чтобы закончить, прежде чем он запустится, это означает, что сцепленные и Uglified JS-файлы не будут в .tmp/page/js еще.

Соответствующая часть документации Gulp:

Примечание. По умолчанию задачи выполняются с максимальным параллелизмом - например, он запускает все задачи одновременно и ничего не ждет. Если вы хотите создать серию, в которой задачи выполняются в определенном порядке, вам нужно сделать две вещи:

  • дать подсказку, чтобы сказать, когда задача выполнена,
  • и намекните, что задача зависит от выполнения другой.
Другие вопросы по тегам