20

grunt スクリプトでコマンド ライン オプションを使用しています: http://kurst.co.uk/transfer/Gruntfile.js

ただし、grunt --vers:0.0.1オプションを取得しようとすると、コマンドは常に「未定義」を返します。

var version = grunt.option('vers') || ''; 

これを機能させるのを手伝ってもらえますか?

さまざまな(CLI)コマンドを試しました:

grunt vers:asd
grunt -vers:asd
grunt vers=asd

を使用するだけでなく:

grunt.option('-vers');
grunt.option('--vers');

しかし、これまでのところ運がありません。うまくいけば、単純なものが欠けています。

これは私のpackage.jsファイルです:

{
    "name": "",
    "version": "0.1.0",
    "description": "Kurst EventDispatcher / Docs Demo ",
    "devDependencies": {
        "grunt": "~0.4.1",
        "grunt-contrib-yuidoc": "*",
        "grunt-typescript": "~0.1.3",
        "uglify-js": "~2.3.5",
        "grunt-lib-contrib": "~0.6.0",
        "grunt-contrib-uglify":"*"
    }
}
4

2 に答える 2

38

Grunt でコマンド ライン引数を指定する正しい構文は次のとおりです。

grunt --option1=myValue

次に、grunt ファイルで値にアクセスして、次のように出力できます。

console.log( grunt.option( "option1" ) );

また、おそらく問題が発生しているもう1つの理由--versは、バージョンを返すうなり声のオプションがすでにあるためです。

★  grunt --vers
grunt-cli v0.1.7
grunt v0.4.1

そのため、別のオプション名に切り替えることをお勧めします。

于 2013-06-09T19:17:41.360 に答える