1

コマンダーを使用しindex.jsて、プロジェクトのファイルでグローバル ノード モジュールのコマンドとオプションを指定しています(に示すように)。

次のコードを使用して、コマンドが使用されたかどうかを簡単に確認できることを知っています。

if (program.peppers) {
  console.log('-peppers was used')
}

しかし、他のファイルでこれらのプロパティを確認するにはどうすればよいでしょうか? 私はすでにprogram他のファイルでエクスポートして要求しようとしましたが、うまくいかないようです。

オプションを定義したファイルとは別のファイルでオプションが使用されているかどうかを確認したいとしましょう。どうすればいいですか?

4

1 に答える 1

0

解析されたプログラムを、解析された引数を必要とするファイル/関数に渡すか、解析された引数programインスタンスをエクスポートできます

ファイルindex.js

var program = require('./program');

if (program.peppers) {
  console.log('-peppers was used')
}

ファイルprogram.js

var program = require('commander');

program
  .version('0.0.1')
  .option('-p, --peppers', 'Add peppers')
  .option('-P, --pineapple', 'Add pineapple')
  .option('-b, --bbq-sauce', 'Add bbq sauce')
  .option('-c, --cheese [type]', 'Add the specified type of cheese [marble]', 'marble')
  .parse(process.argv);

module.exports = program;

index.jsコマンドラインからの呼び出し:

> node index.js -p

出力を生成します

-peppers was used
于 2016-01-28T11:21:53.520 に答える