grunt-register-tasks
Registers multiple grunt tasks at once using an object
Overview
Usually you’d have to register each task one by one calling grunt.registerTask
, which results in ugly code compared to the object syntax as for example used in grunt.initConfig
.
This module provides a wrapper function for grunt.registerTask
that takes a tasks
object as its second argument in which you can specify all the tasks you need to register.
Before
gruntgruntgruntgrunt;
After
grunt backup: 'compress:src' serve: 'connect:build' build: 'concat:src' 'copy:src' custom: description: 'My custom task' { ; // First, do something } taskList: 'build' // Then, start build process ;
Getting started
Install
$ npm install --save-dev grunt-register-tasks
Usage
grunt-registered-tasks
takes an object of key‐value pairs (e.g. { key: 'value' }
) where key
represents the corresponding taskName
and value
specifies the tasks.
Accepted values are strings for single tasks, taskList
arrays, taskFunction
functions or a taskObject
(see syntax).
// Gruntfile.js module { grunt grunt 'my-task': /* Your tasks */ ;};
Syntax
taskObject
Instead of passing a taskList
array to register an “alias task” or passing a taskFunction
function to register a “function task”, an object will also be accepted.
This so‐called taskObject
object can have 3 properties:
taskList
Type: string
, array
// Either a single task taskList: 'copy' // Or a list of tasks taskList: 'copy'
taskFunction
Type: function
{ /* Your custom task */ }
It’s also possible to pass both a taskFunction
and a taskList
.
In this case, the taskFunction
will be invoked first and then grunt.task.run
will be called passing the taskList
as its first argument.
{ /* First */ } taskList: 'copy' // Second — grunt.task.run('copy')}
description (optional)
Type: string
// Alias task description description: 'Runs the copy task.' taskList: 'copy' // Function task description description: 'Lorem ipsum.' { /* Your custom task */ }