2013-06-09 14 views
18

używam opcji wiersza poleceń w moim skrypcie grunt: http://kurst.co.uk/transfer/Gruntfile.jsGrunt - Command Line argumenty nie działają

Jednak komenda grunt --vers:0.0.1 zawsze zwraca 'niezdefiniowane', gdy próbuję uzyskać opcję:

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

Czy możesz mi pomóc, aby to zadziałało?

Próbowałem różnych poleceń (CLI):

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

jak również za pomocą:

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

Ale nie ma szczęścia do tej pory. Mam nadzieję, że brakuje mi czegoś prostego.

To jest mój plik 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":"*" 
    } 
} 
+0

Możliwy duplikat [Grunt Command Line Parameters] (http://stackoverflow.com/questions/20127586/grunt-command-line-parameters) – Claudiu

Odpowiedz

37

Prawidłowa składnia do określania command line argument in Grunt jest:

grunt --option1=myValue

Następnie w pliku grunt można uzyskać dostęp do wartości i druk to tak:

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

także inny powód, dla którego są prawdopodobnie problemy z --vers dlatego jej już grunt opcja, która zwraca wersję:

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

Więc to prawdopodobnie byłby to dobry pomysł, aby przełączyć się do innej nazwy opcji.

+0

doskonały, że pracowała doskonale . Dziękuję ... – user2386872

+3

Nie wiem, dlaczego tak trudno mi było znaleźć to na chrząstwie dokumentacji. Dzięki wielkie! – mmmeff

3

Warto wspomnieć, że wraz z rosnącą ilością argumentów z wiersza poleceń, będzie wpadać w kolizje z pewnymi argumentami, których funkcja używa wewnętrznie.

mam ten problem z nopt-grunt

od autora Plugin:

Grunt jest niesamowite. Wsparcie Grunt dla używania dodatkowych opcji wiersza poleceń nie jest niesamowite. Obecna dokumentacja wprowadza w błąd, ponieważ podaje przykłady użycia flag logicznych i opcji z wartościami, ale nie mówią one, że działa to tylko z jedną opcją. Spróbuj użyć więcej niż jednej opcji, a rzeczy szybko się rozpadną.

To na pewno warto sprawdzić

+2

Ta wtyczka została wycofana i nie jest już utrzymywana. Grunt poprawił problemy, dzięki którym ta wtyczka była przydatna. – PeterM

Powiązane problemy