আপনার যদি নির্ভরশীল কার্য থাকে তবে কাজগুলি চালনার আগে তাদের নির্ভরশীল কাজগুলি শেষ হওয়ার জন্য অপেক্ষা করার জন্য আপনার স্ট্রিমটি ফিরে আসতে হবে।
যেমন
// 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'));
});
সেই উদাহরণে আপনি টাস্ক 1 চালুর আগে টাস্ক 1 সম্পূর্ণ হওয়ার (যেমন কফিসিপিটি যা যা যা সংকলন করেছেন) প্রত্যাশা করবেন ... তবে আমরা যদি রিটার্ন যোগ না করি - নীচের উদাহরণের মতো - তবে তারা সিঙ্ক্রোনিকভাবে চলবে না অ্যাসিক্রোনিকভাবে; এবং কম্পাইল coffeescript minified হবে না কারণ 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'));
});
সম্পাদনা: এখানকার রেসিপিটি এটি আরও ব্যাখ্যা করে। https://github.com/gulpjs/gulp/blob/master/docs/recipes/running-tasks-in-series.md