将参数传递到Grunt任务中调用的文件中?

时间:2014-05-27 16:24:37

标签: javascript io gruntjs

我正在使用命令行来调用grunt命令。我硬编码的信息在执行时运行并且成功运行。我试图使用别名任务在命令行传递数字而不是硬编码。 (别名任务尚未完成,但这不是主要问题)。在任务中,我通过src: path执行另一个文件。我想将命令行中的数字传递给该程序。那可能吗?我怎么能这样做呢? 我正在使用的别名代码是从另一个问题中提取的 Pass params to an grunt task from an alias task

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;
  }));
});

包含我尝试将参数传递到的文件的代码的任务如下所示:

taskname: {
        //other code
        src: 'path.js'
      }

我可以将数据传递到path.js

中的代码

编辑:我正在将Grunt与Casper.js一起使用

1 个答案:

答案 0 :(得分:2)

是的,您可以使用grunt.option传递参数。

您需要使用参数... --your-param=1234调用您的任务,并在任务中通过调用grunt.option('your-param')获取值。