gulp
public task / private task
无论是 public task 还是 private task ,都可以被 series()
js
const { series } = require("gulp");
// clean 是私有任务
function clean(cb) {
// ...
cb();
}
// build 是公有任务,因为被 exports 。
// build 可以被 `gulp` command 调用
function build(cb) {
// ...
cb();
}
exports.build = build;
exports.default = series(clean, build);task 组合
series
任务串行执行
js
const { series } = require("gulp");
function transpile(cb) {
// body omitted
cb();
}
function bundle(cb) {
// body omitted
cb();
}
exports.build = series(transpile, bundle);parallel
任务并行执行
js
const { parallel } = require("gulp");
function javascript(cb) {
// body omitted
cb();
}
function css(cb) {
// body omitted
cb();
}
exports.build = parallel(javascript, css);嵌套
没有深度限制
js
exports.build = series(
clean,
parallel(cssTranspile, series(jsTranspile, jsBundle)),
parallel(cssMinify, jsMinify),
publish
);