Я изучаю некоторые инструменты и хотел бы использовать gulp для автоматизации определенных задач.
Моя проблема в том, что я не могу связать задачи одну за другой. Ниже мой минимальный код, иллюстрирующий проблему.
package.json
имеет "gulp": "^4.0.2"
, а ниже - мой gulpFile.js
:
var gulp = require('gulp');
function showMessage(message) {
setTimeout(() => {
console.log(message);
}, 500);
}
gulp.task('task1', async () => {
showMessage("task 1 executed")
});
gulp.task('task2', async () => {
showMessage("task 2 executed")
});
gulp.task('chainExample', gulp.series('task1', 'task2'));
При вызове задачи chainExample
вывод консоли task1 и task2 выполняется после завершения задачи :
$ gulp chainExample
[01:11:24] Using gulpfile ..\gulpfile.js
[01:11:24] Starting 'chainExample'...
[01:11:24] Starting 'task1'...
[01:11:24] Finished 'task1' after 2.21 ms
[01:11:24] Starting 'task2'...
[01:11:24] Finished 'task2' after 819 μs
[01:11:24] Finished 'chainExample' after 7.68 ms
task 1 executed
task 2 executed
То, что я пытаюсь выполнить sh, - это вывод на консоль соответствующих задач в строках «Начало» и «Завершение».
Я также пробовал использовать gulp4-run-sequence
безуспешно и с таким же выводом:
var runSequence = require('gulp4-run-sequence');
gulp.task('chainExample1', function(done) {
runSequence('task1', 'task2', function() {
done();
});
});
Расскажите, пожалуйста, о том, как я могу правильно связать задачи. Большое спасибо!