Подтвердить что ты не робот

Аргументы командной строки Grunt - не работают

Я использую параметры командной строки в моем grunt script: http://kurst.co.uk/transfer/Gruntfile.js

Однако команда grunt --vers:0.0.1 всегда возвращает 'undefined', когда я пытаюсь получить эту опцию:

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":"*"
    }
}
4b9b3361

Ответ 1

Правильный синтаксис для указания аргумента командной строки в Grunt:

grunt --option1=myValue

Затем в файле grunt вы можете получить доступ к значению и распечатать его следующим образом:

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

Кроме того, еще одна причина, по которой у вас, вероятно, проблемы с --vers, заключается в том, что его уже включен параметр grunt, который возвращает версию:

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

Поэтому было бы неплохо перейти на другое имя опции.

Ответ 2

Следует отметить, что по мере увеличения количества аргументов командной строки, которые вы хотите использовать, вы столкнетесь с конфликтами с некоторыми аргументами, которые используют grunt внутри.

У меня возникла проблема с nopt-grunt

От автора плагина:

Грунт потрясающий. Поддержка Grunt для использования дополнительных параметров командной строки не является удивительной. Текущая документация вводит в заблуждение в том, что они приводят примеры использования логических флагов и опций со значениями, но они не говорят вам, что они работают только с одной опцией. Попробуйте использовать более одного варианта, и все быстро развалится.

Это определенно стоит проверить