2016-04-17 2 views
2

В соответствии с commander.js ридми, я могу указать команды по умолчанию, таким образом:commander.js: проезжают IsDefault вариант для команды с действием()

var program = ...; 

program 
    ... 
    .command('list', 'list packages installed', {isDefault: true}) 
    .parse(process.argv); 

В моем приложении я использую .command() без описания параметр, для использования .action(). Я попытался передать второй параметр null и третий вариант с isDefault:true. Но это не похоже на работу:

program.command('help', null, {isDefault:true}) 
    .description('display help information.') 
    .action(function(){ 
    program.outputHelp(); 
    }); 

Как передать isDefault:true команде с .action()?

+0

Нет поддержки [по отчетности для разработчиков] (https://github.com/tj/commander.js/issues/469). Нет поддержки в SO. Начал свою собственную реализацию: [WizTools.org Cli Parse] (https://github.com/wiztools/wiz-cliparse). –

ответ

0

в соответствии с documentation:

Когда .command() вызывается с описанием аргумента, не .action (обратный вызов) не должен вызываться для обработки суб-команд, в противном случае будет ошибка.

Я считаю, что это означает, что вам нужно будет найти обходное решение, например, написать отдельную подкоманду.