将params从别名任务传递给grunt任务

时间:2013-04-26 14:46:27

标签: gruntjs

有没有办法将这样的别名任务中的参数传递给调用任务:

grunt.registerTask('taskA', ['taskB', 'taskC'])

grunt taskA:test

以便使用参数taskB调用任务taskCtest

1 个答案:

答案 0 :(得分:20)

您可以像这样创建动态别名任务:

grunt.registerTask('taskA', function(target) {
  var tasks = ['taskB', 'taskC'];
  if (target == null) {
    grunt.warn('taskA target must be specified, like taskA:001.');
  }
  grunt.task.run.apply(grunt.task, tasks.map(function(task) {
    return task + ':' + target;
  }));
});

以下是Grunt文档中另一个示例的常见问题解答:http://gruntjs.com/frequently-asked-questions#dynamic-alias-tasks