Node.js+Angular備忘録

Node.jsの機能を使用する際にはnpmを使用する。

一方、Angularの機能を使用する際にはngコマンドを使用するが、こちらはあまり意識して使うことは無いかもしれない。

良く使用するnpmコマンド

主に使用するnpmコマンドは以下。

  • npm install:カレントディレクトリにnodeをインストールする
  • npm test:UTを実行する
  • npm start:アプリケーションを起動する

また、npm run <script> で、グローバルの設定に依存せず、プロジェクトフォルダのpackage.jsonに記載されているscript欄のコマンドを実行する。

install、test、startは、script欄に記載が無くても実行できる。

ngxコマンド

npxはnpmに同梱されているコマンドで、開発フォルダのnode_modules/.binに含まれる実行ファイルを一時的に呼び出す。

例えば、ngコマンドを使用したいとき、直接『ng ●●』と打つと、プロジェクトではなくグローバルのnode_modulesのngコマンドを参照する。

プロジェクトでAngular-CLIを使用していても、グローバルに存在しない場合、『用語’ng’は、コマンドレット、関数、スクリプトファイル、または操作可能なブログラムの名前として認識されません』エラーとなる。

以下のようにnpxコマンドに続けて実行すれば、ローカルのAngular-cliを参照するため、実行できるようになる。

npx ng build

npm run <script>に引数を渡す

package.jsonのscript欄に以下の記載があるとする。

"mytest": "npm run test --code-coverage"

つまり、npm run mytest を実行すれば、カバレッジ付きのテストが実行される。

このとき、すべてのテストでなく、1つのファイルのテストを実行したい場合は、さらに-includeオプションを付与する必要がある。

しかし、npm run mytestは、package.jsonのscriptsに記載されているmytestの処理を実行せよ、という意味なので、それ自体に引数を渡すことができない。

mytestで実行される先の処理に引数を渡す場合は、以下のように『-』を2つ挟んで追加のオプションを記述する。

npm run mytest -- --include filepath

 

コメント

タイトルとURLをコピーしました