有没有办法在grunt任务名称中指定变量?

时间:2015-05-12 12:22:44

标签: gruntjs

有没有办法在grunt任务名称中指定变量? 我想做点什么

 grunt build version 0.1

然后在gruntfile.js

grunt.initConfig({
    version: // read that version
 files: {
          '<%= version %>.js'

2 个答案:

答案 0 :(得分:1)

试试这个:

YourTask: {
    dist: {
        files: { 'dist.<%= version %>.js', ........
    }
},

像这样注册build任务:

grunt.task.registerTask('build', 'build a specific version', 
function(version) {
  if (arguments.length === 0) {
    grunt.log.writeln(this.name + ", missing version");
  } else {
    grunt.log.writeln(this.name + " version " + version);
    grunt.config.set('version', version);
    grunt.task.run([
       'YourTask:dist'
    ]);
  }
});

然后你会打电话给:grunt build:0.1

答案 1 :(得分:0)

我很难理解为什么你需要在grunt-tasks中使用不同的名字。但你所谈论的事情似乎是参数使用。试试这些代码:

grunt.registerTask('custom', 'Build version', function () {  
  grunt.config.set('ver', grunt.option('ver') || 0);
  grunt.task.run('build');
});

使用--ver参数运行它:

grunt custom --ver=0.1