目的
アプリケーションを開発するにあたり、npmコマンドが多く使われているのでどのようなものか、その使い方をまとめる。
npmとは
- nodeのパッケージを管理するためのツール
- node
サーバー上(ブラウザ外で)でJavascriptを動かせるプラットフォーム。
- node
- パッケージのインストールやアンイストール、アップデートなどできる
- パッケージの依存関係を解決できる
コマンド
現在のバージョン確認
npm -v
初期化
npm init
プロジェクトの作成。packeage.json作成。
- packeage.json
プロジェクトの詳細が書かれたファイル
インストールしたいパッケージなどを記載する
インストール
npm install パッケージ名
npm i パッケージ名
# パッケージのバージョン指定
npm i パッケージ名@x.y.z
npm ci
npm i はpackage.jsonに基づいてパッケージをインストール。
npm ci はpackage-lock.jsonに基づいてパッケージをインストール
- packeage-lock.json
実際にインストールしたモジュールの詳細情報(バージョンなど)が書かれているファイル
npm i はpackeage.json, packeage-lock.jsonを変えてしまう可能性あるので、git cloneしたときなどグループでパッケージのバージョンを固定したい時はnpm ci する。
インストールしたパッケージはカレントリディレクトリ配下のnode_muduleに配置される。
種類
# ローカルインストール
npm install パッケージ名
# グローバルインストール
npm i -g パッケージ名
# devDevpenciesにインストール
npm i --save-dev パッケージ名
# devDevpenciesにインストールの省略形
npm i -D パッケージ名
- ローカルインストール
現在いるディレクトリのプロジェクトへのインストール - グローバルインストール
PC自体にインストール - devdDevpencies
開発やテストに使用するパッケージ(本番で使わないパッケージ)を設定
本番で使うのはdependencies
アップデート
# インストールしたパッケージにアップデートがあるかの確認
npm outdated
# パッケージ指定してアップデート
npm update パッケージ名
# packeage.jsonに記述されたすべてのパッケージをアップデート
npm update
アンインストール
npm uninstall パッケージ名
npm remove パッケージ名
npm r パッケージ名
# アンインストール時にpackage.jsonのdependenciesの記述も削除
npm uninstall --save パッケージ名
# アンインストール時にpackeage.jsonのdevDependenciesの記述も削除
npm uninstall --save-dev パッケージ名
パッケージの実行
# パスを指定して実行
./node_modules/.bin/パッケージ名
# npxを利用して実行
npx react パッケージ名
- npxはローカルに実行可能なコマンドを探しに行き、該当するパッケージがない時は一時的にパッケージをインストールして実行できるコマンド
パッケージインストールリスト
# カレントディレクトリにインストールされているパッケージの一覧を出力
npm list
# グローバルインストールしたパッケージの一覧を出力
npm list -g