手始めに、なぜこれが良いのですか?
歴史的に、ある種のノードパッケージ(ビルドツール、テストランナー)は2種類のパッケージを使用しました。1つはグローバルにインストールされ、通常は-fix postfix(karma-cli、grunt-cli)があり、ローカルにインストールされたパッケージを実行しましたnode_modules。 これにより、他のすべてのプロジェクトのすべてのテストを中断することなく、異なるバージョンのテストランナーを使用できるようになりました。必要に応じて、いずれかのプロジェクトのパッケージを更新します。 これはかつて、うなり声に対する優れたソリューションでした(バージョン0.4.0はこのアプローチを適用し、パッケージの後方互換性に関する多くの問題を回避するのに役立ちました)。
また、npmスクリプトを実行すると、node_modules / .binが実行可能ファイルのパスに追加されます。このファイルには、原則として、グローバルcliパッケージによって起動される同じランナー/ビルダーが含まれます。 これにより、package.jsonに追加できます。
scripts: { grunt: "grunt build" }
そして、単純な
npm run grunt
でローカルにインストールされたgruntを
npm run grunt
ます。 今日までの問題は、npmスクリプトに引数を渡す必要がある場合でした-これは不可能でした。
これでpackage.jsonを追加することで可能になります
scripts: { grunt: "grunt" }
npm run grunt - build
や
npm run grunt - build --verbose
などのコマンドを使用します。 元のプルリクエストに対するコメントの1
alias gr='npm run grunt --'
、
alias gr='npm run grunt --'
という形式の
alias gr='npm run grunt --'
作成し、単純な
gr build
ビルドを開始することが提案されています。