2012-11-12 31 views
17

Gdzie mogę uzyskać uchwyt dla argumentów wiersza poleceń?zaczynarki - argumenty wiersza polecenia

np. grunt dist --env=UAT. Jak uzyskać wartość dla env?

Kiedy jestem przy tym, w jaki sposób przypisać wartość domyślną, jeśli nie jest on ustawiony w linii poleceń?

+0

Czy trzeba obsłużyć argumenty za konkretne zadanie? –

Odpowiedz

36

Można użyć grunt.option() lub dokładniej:

var env = grunt.option('env') || 'default';

chwycić argument env lub domyślnego do łańcucha 'default' jeśli argument nie jest obecny.

0

Uważam, że obsługa błędów domyślnych jest chybiona. Opisana powyżej metoda działa, ale szybko staje się męcząca, gdy masz wiele opcji.

Trochę funkcja pomocnika może złagodzić to:

function defaultOptions(options) { 
    for(var key in options) { 
    if(options.hasOwnProperty(key) && !grunt.option(key)) { 
     grunt.option(key, options[key]); 
    } 
    } 
} 

Następnie można użyć jak:

defaultOptions({ 
    env : "staging" 
}); 

A na CLI:

grunt // { env : "staging" } 
grunt --env=UAT // { env : "UAT" } 
Powiązane problemy