問題タブ [node-commander]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
9263 参照

node.js - commander.js : 必要な cli 引数の指定方法

コマンドライン引数を解析するために commander.js パッケージを使用しています。フラグをオプションでなくしたいのですが、git リポジトリの API とテストでは、フラグを必須にすることについて大まかに言及されていますが、通常はヒットする必要があります。説明書付きの頭。

実際に可能で、要件が満たされない場合、スクリプトはスローされますか?

0 投票する
3 に答える
3381 参照

javascript - Node js commander args は、値の代わりに true を返します

ノードとノード コマンダーを使用してスクリプトを作成したいのですが、引数の値を取得しようとすると、値自体ではなく値 true が取得されます。

たとえば、ターミナルでこれを書くと:

この引数の値を取得するにはどうすればよいですか?

0 投票する
1 に答える
80 参照

node.js - モジュールの現在のディレクトリを確認するように強制する

Node.js でコマンドライン アプリケーションを作成しています。requireモジュールの現在のディレクトリを確認するにはどうすればよいですか?

たとえば、testing ディレクトリでコマンドを実行したいとします。

node_modules/グローバルバージョンを使用するのではなく、そのディレクトリにあるモジュールを取得します。

0 投票する
1 に答える
264 参照

node.js - 別のファイルにあるコマンド オプションにアクセスするにはどうすればよいですか?

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

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

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

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

0 投票する
2 に答える
1079 参照

node.js - 「co」を使用してコールバックをラップして非同期にする適切な方法は?

それは 2016 年のことで、Node は v4 から ES6 をほぼ完全にサポートしており、Promises は 0.12 から存在しています。コールバックをほこりの IMO に残す時が来ました。

私は、多くの非同期操作 (http 要求とユーザー入力) を活用するcommander.jsベースの CLI util に取り組んでいます。Commanderactionを async 関数でラップして、プロミスとして扱うことができるようにし、ジェネレーターをサポートしたいと考えています (co-promptユーザー入力に使用しているライブラリに役立ちます)。

CB をco次の 2 つの方法でラップしてみました。

1) program.command('myCmd') .action(program => co(function* (program) {...}) .catch(err => console.log(err.stack)) );

2)program.command('myCmd').action(co.wrap(function* (program) { .. }));

1) の問題は、programパラメーターが渡されないことです

2)の問題は、エラーが飲み込まれることです...

多くの http リクエストを含み、ライブラリを使用してユーザー入力を待機している私のユースケースでは、より優れたコードが生成されるため、これを機能させたいと思っていco-promptます..

program.Command.prototype.actionおそらく何らかの形でラップする方が良い選択肢ですか?

ありがとう!