CLI
gulp CLI 文档
参数标志
gulp 只有很少几个需要了解的标志参数。所有其他标志都是供任务在需要时使用的。
-v
或--version
将显示全局和本地的 gulp 版本--require <模块路径>
在运行 gulpfile 之前将会require一个模块。这对于转译器(transpilers)很有用,但也有其他应用。你可以使用多个--require
标志--gulpfile <gulpfile 路径>
将手动设置 gulpfile 的路径。如果你有多个 gulpfile,这很有用。这也会将 CWD 设置为 gulpfile 目录--cwd <目录路径>
将手动设置 CWD(当前工作目录)。gulpfile 的搜索以及所有 requires 的相对路径都将从这里开始-T
或--tasks
将显示所加载的 gulpfile 的任务依赖树。它将包括任务名称和它们的描述。--tasks-simple
将显示所加载的 gulpfile 的任务的纯文本列表--verify
将验证项目 package.json 中引用的插件是否在插件黑名单中--color
将强制 gulp 和 gulp 插件显示颜色,即使没有检测到颜色支持--no-color
将强制 gulp 和 gulp 插件不显示颜色,即使检测到颜色支持--silent
将禁用所有 gulp 日志输出
CLI 添加了 process.env.INIT_CWD,这是它最初启动的工作目录。
任务特定标志
参考这个 StackOverflow 链接,了解如何添加任务特定的标志
任务
可以通过运行 gulp <任务> <任务>...
来执行任务。
如果列出了多个任务,Gulp 将同时执行所有这些任务,就好像它们都被列为单个任务的依赖项一样。
Gulp 不会序列化命令行上列出的任务。使用过其他类似工具的用户可能会期望执行像 gulp clean build
这样的命令,其中包含名为 clean
和 build
的任务。这不会产生预期的结果,因为这两个任务将同时执行。
仅运行 gulp
将执行 default
任务。如果没有 default
任务,gulp 将报错。
编译器
你可以在 interpret 找到支持的语言列表。如果你想添加对新语言的支持,请在那里发送拉取请求/开启问题。
示例
示例 gulpfile
gulp.task('one', function(done) {
// 做些事情
done();
});
gulp.task('two', function(done) {
// 做些事情
done();
});
gulp.task('three', three);
function three(done) {
done();
}
three.description = "这是任务 three 的描述";
gulp.task('four', gulp.series('one', 'two'));
gulp.task('five',
gulp.series('four',
gulp.parallel('three', function(done) {
// 做更多事情
done();
})
)
);
-T
或 --tasks
命令:gulp -T
或 gulp --tasks
输出:
[20:58:55] Tasks for ~\exampleProject\gulpfile.js
[20:58:55] ├── one
[20:58:55] ├── two
[20:58:55] ├── three 这是任务 three 的描述
[20:58:55] ├─┬ four
[20:58:55] │ └─┬ <series>
[20:58:55] │ ├── one
[20:58:55] │ └── two
[20:58:55] ├─┬ five
[20:58:55] │ └─┬ <series>
[20:58:55] │ ├─┬ four
[20:58:55] │ │ └─┬ <series>
[20:58:55] │ │ ├── one
[20:58:55] │ │ └── two
[20:58:55] │ └─┬ <parallel>
[20:58:55] │ ├── three
[20:58:55] │ └── <anonymous>
--tasks-simple
命令:gulp --tasks-simple
输出:
one
two
three
four
five