将节点版本传递给 grunt-exec

Passing node version to grunt-exec

有人知道如何将当前节点版本传递给 grunt-exec 吗?目前我有如下 grunt exec 设置:

grunt.initConfig({
    exec:{
      mocha: {
        cmd:function(version){
          if(semver.gt(version, '0.10')){
            return 'mocha test/index.js';
          } else return 'mocha --harmony test/harmony/index.js';
        }
      }
    }
  });

grunt.registerTask() 中,我试过像这样使用 bash 命令

    grunt.registerTask('default', [
    'exec:mocha:$(node version)'
  ]);

当然不是这样的。

我看过 grunt-node-version 之类的插件,但缺少实际示例并没有太大帮助。

有什么建议吗?

在 npmjs.com 上查找后,我找到了帮助我进行一些修改的完美模块:

使用 node-version,我能够将版本传递给函数并让 semver 决定它是否大于某个版本,如下所示:

var version = new (require('node-version').version);
    version = version.getVersion();

    grunt.initConfig({
        exec:{
          mocha: {
            cmd:function(version){
              if(semver.lt(version.toString(), '0.11.0')){
                return 'mocha test/index.js';
              } else return 'mocha --harmony test/harmony/index.js';
            }
          }
        }
     });

     grunt.registerTask('default', [
        'exec:mocha:' + version.long
      ]);