Если у вас есть зависимые задачи, необходимые для возвращения потоком для задач, чтобы ждать их зависимых задач, чтобы завершить перед запуском.
например
// without return
gulp.task('task1', function() {
gulp.src('src/coffee/*.coffee')
/* eg compile coffeescript here */
.pipe(gulp.dest('src'));
});
gulp.task('task2', ['task1'], function() {
gulp.src('src/*.js')
/* eg minfify js here */
.pipe(gulp.dest('dest'));
});
в этом примере можно было ожидать task1 для завершения (например, составление CoffeeScript или любой другой), прежде чем TASK2 пробегов ... но если мы не добавим возвращение - как пример ниже - тогда они будут работать синхронно не асинхронно; и скомпилированный coffeescript не будет уменьшен, потому что task2 не дождался завершения задачи 1 и поэтому не будет собирать скомпилированный вывод task1. Поэтому мы всегда должны возвращаться в этих обстоятельствах.
// with return
gulp.task('task1', function() {
return gulp.src('**/*.coffee')
/* your operations here */
.pipe(gulp.dest('dest'));
});
gulp.task('task2', ['task1'], function() {
return gulp.src('**/*.js')
/* your operations here */
.pipe(gulp.dest('dest'));
});
Edit: Рецепт здесь объясняет его дальше. https://github.com/gulpjs/gulp/blob/master/docs/recipes/running-tasks-in-series.md
Отлично! спасибо за ответ Синдре. Теперь у вас глоток, как шарм. Любить это. –
Удивительно, что именно я искал :) –
Означает ли это, что вы * должны * возвращаться при использовании 'gulp.src()'? Что произойдет, если вы не вернете 'gulp.src()'? – jbandi