虽然习惯使用Rakefile,Cakefile和Jakefile,但他们都有一些方便的列出可用任务的方法。
像
jake -T
jake db:dump # Dump the database
jake db:load # Populate the database
...等。
甚至过滤 “jake -T dum”,只显示“the jake db:dump”任务。
那么,有没有办法使用grunt做同样的事情? 我在考虑创建一个默认任务来迭代整个grunt配置对象并通过console.log将其写入stdout,但有人知道更好的方法吗?
感谢。
答案 0 :(得分:16)
grunt --help按照以下answer列出可用任务。
示例输出
.....
Available tasks
clean Clean files and folders. *
jade Compile jade templates. *
web_server A Web Server similar to Python's SimpleHTTPServer, with
Cross-Origin Resource Sharing and No-Cache options. *
答案 1 :(得分:11)
据我所知,显示可用任务的唯一方法(显然没有黑客)是使用-h
或--help
选项。
正如您在grunt-cli source中所看到的,他们显然只关注-h
(帮助),-V
(版本)和-v
(详细)选项。
所以,我认为目前您必须创建自己的自定义任务才能实现目标。
答案 2 :(得分:9)
有更好的方法!我目前正在开发一个单独的插件grunt-available-tasks来实现此功能。使用以下命令将其添加到项目中:
npm install grunt-available-tasks --save-dev
然后运行grunt availabletasks
以获取您的任务列表。您可能希望使用tasks
对此进行别名以节省一些输入:
grunt.registerTask('tasks', ['availabletasks']);
然后,通过一些配置,您可以获得如下列表:
$ grunt tasks
Running "availabletasks" task
Deployment Tasks
doc => Build the documentation.
production => Build a complete distribution for production; stricter linting and a full browser test.
Development Tasks
default => Build a development distribution.
watch > Run predefined tasks whenever watched files change.
Done, without errors.
您可以使用Gruntfile中的配置对象对任务进行过滤,分组和排序。 README中提供comprehensive list of options。