Thành phần tác vụ Gulp
Các tác vụ Gulp có thể được kết hợp thành các nhóm (thành phần), trong đó các tác vụ sẽ được thực hiện tuần tự hoặc song song.
Hãy xem cách thực hiện điều này. Để ví dụ, chúng ta hãy lấy các tác vụ sau:
function task1(cb) {
cb();
}
function task2(cb) {
cb();
}
Thực hiện tuần tự
Để thực hiện các tác vụ tuần tự, có hàm
series. Hàm này nhận bất kỳ số lượng
tác vụ nào làm tham số và thực hiện
chúng lần lượt theo thứ tự liệt kê.
Đầu tiên, cần nhập hàm này từ thư viện Gulp:
const { series } = require('gulp');
Bây giờ chúng ta có thể sử dụng hàm này:
function taskD(cb) {
series(task1, task2);
cb();
}
exports.default = taskD;
Có thể xuất ngay kết quả của
series mà không cần tạo thêm hàm
cho tác vụ công khai:
exports.default = series(task1, task2);
Tạo ba tác vụ được thực hiện tuần tự theo thứ tự.
Thực hiện song song
Để thực hiện các tác vụ song song, có
một hàm tương tự parallel(). Hãy
xem cách hoạt động của nó.
Đầu tiên, hãy kết nối nó:
const { parallel } = require('gulp');
Sử dụng hàm của chúng ta bên trong tác vụ công khai:
function taskD(cb) {
parallel(task1, task2);
cb();
}
exports.default = taskD;
Hoặc chỉ cần xuất kết quả công việc:
exports.default = parallel(task1, task2);
Tạo ba tác vụ chạy song song.
Tổ hợp
Các hàm series và parallel()
có thể được lồng vào nhau trong bất kỳ tổ hợp nào,
ví dụ như sau:
exports.default = series(task1, parallel(task2, task3));
Tạo năm tác vụ. Hãy nghĩ ra các ví dụ về tổ hợp với các tác vụ này.