ホームページ >ウェブフロントエンド >jsチュートリアル >動的コマンドライン引数を npm スクリプトに渡すにはどうすればよいですか?

動的コマンドライン引数を npm スクリプトに渡すにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-04 02:52:09127ブラウズ

How Can I Pass Dynamic Command Line Arguments to npm Scripts?

npm スクリプトを使用した動的なコマンド ライン引数の実現

開発の分野では、npm コマンドを通じて実行されるスクリプトに引数を渡すことが望ましいことがよくあります。この記事では、npm スクリプトを使用してこれを実現する可能性について詳しく説明します。私たちは、npm の新しいバージョン (2 以降) と、スクリプトに引数を渡すための堅牢なサポートに焦点を当てます。

npm 2 以降

npm 2 以降のバージョンでは、 npm run コマンドに引数を渡す方法は次のとおりです:

npm run <command> [-- <args>]

区切り文字 '--' は重要です。 npm 向けのパラメータとスクリプト向けのパラメータを分割します。以下に図を示します。

npm run grunt -- task:target  // Invokes `grunt task:target`
npm run server -- --port=1337 // Invokes `node server.js --port=1337`

引数が「-」または「--」で始まらない場合、明示的な「--」区切り文字はオプションですが、明確にするために推奨されることに注意してください。

npm run grunt task:target     // Also invokes `grunt task:target`

ただし、「-」または「--」で始まる引数には注意してください。npm はそれらを引数に渡すのではなく、独自のオプションとして解釈します。 script.

['C:\Program Files\nodejs\node.exe', 'C:\git\myrepo\test.js', 'foobar']  // Argument passed to script

['C:\Program Files\nodejs\node.exe', 'C:\git\myrepo\test.js']  // Argument not passed to script

スクリプト内のパラメータ値を取得するには、process.argv を利用できます。より複雑な処理の場合、yargs や minimist などのライブラリは、名前付きパラメータを解析し、process.argv.

によって公開される空白で区切られたコマンド ライン引数を処理するのに最適です。

以上が動的コマンドライン引数を npm スクリプトに渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。