【发布时间】:2015-08-26 22:14:31
【问题描述】:
嗨,以前我使用grunt,因为我想知道可用的任务使用grunt --help。但与gulp 相同,使用gulp --help 它不会显示。知道gulp中可用任务列表的命令是什么
【问题讨论】:
标签: javascript node.js gulp
嗨,以前我使用grunt,因为我想知道可用的任务使用grunt --help。但与gulp 相同,使用gulp --help 它不会显示。知道gulp中可用任务列表的命令是什么
【问题讨论】:
标签: javascript node.js gulp
没有执行此操作的本机命令,但我使用 this plugin 和以下代码:
module.exports.help = require('gulp-help')(gulp, {description : false});
然后我可以在控制台中运行默认的gulp 任务,它会显示任务和定义列表。
【讨论】:
gulp --tasks
是的,我得到它使用gulp --tasks in 命令然后它显示任务列表。
【讨论】:
3.9.x 也有 --tasks 标志。所以它可以工作(至少在我本地的 3.9.1 上)
gulp --tasks-simple 可能更好,因为它只显示顶级任务,一个非常干净的列表,而 gulp --tasks 还显示任务依赖关系图——我想这完全取决于你有多少细节想要。
gulp -T --depth 1
你也可以使用这个插件gulp-task-listing。它给出了main-tasks 和sub-tasks list
【讨论】:
gulp.tasks 为 null。
作为替代方案,您可以使用 gulp-task-doc 在 js cmets 中为您的任务编写详细文档
【讨论】:
另一种可能性是使用gulp-help-doc 模块,它提供了在gulpfile 中基于类似jsDoc 的cmets 打印使用信息的可能性。目前它也支持 TypeScript。好处是您只需在不更改 gulp API 的情况下评论您的代码,并且您在命令行中也有使用信息。
【讨论】:
gulp --tasks-simple
此命令打印任务的明文列表。我的本地项目:
~ gulp --tasks-simple
clean
default
~ gulp --version
[03:00:05] CLI version 1.2.1
[03:00:05] Local version 4.0.0-alpha.2
~ gulp --help | grep 'tasks-simple'
--tasks-simple Print a plaintext list of tasks for the loaded gulpfile. [boolean]
【讨论】:
如果您使用 Gulp 4,您可以执行以下操作:
const tasks = gulp.registry().tasks();
// Outputs a JS object: { <task name>: <function>, ...}
console.log(tasks);
const taskNames = Object.Keys(tasks);
// Outputs a JS array: ['<task name>', ...]
console.log(taskNames);
【讨论】:
灵感来自@matt-gaunt https://stackoverflow.com/a/65571474/1347601
// gulp task
const list = () => {
const tasks = gulp.registry().tasks();
for (const [key, value] of Object.entries(tasks)) {
console.log(key);
}
}
gulp.task('list', list);
// gulp process default
gulp.task('list', gulp.series(
list
));
【讨论】: