1
我使用commander.js來解析命令行參數,我試圖收集可以出現多次的可選參數,它總是返回我設置的選項加上默認一個。Commander.js收集多個選項總是包括默認
function collect (val, memo) {
memo.push(val);
return memo;
}
program
.command('run <param>')
.action(function run(param, options) {
console.log(param);
console.log(options.parent.config);
});
program
.option('-c, --config <path>', 'Config', collect, ["/path/to/default"])
.parse(process.argv);
當我打電話這樣index.js run some -c "/some/path" -c "/other/path"
腳本它打印[ '/path/to/default', '/some/path', '/other/path' ]
,它應該只打印['/some/path', '/other/path' ]
,當我把它叫做沒有它工作正常使用-c PARAM,印刷用默認值的陣列。
我該如何解決這個問題?