npm コマンド(まとめ)

2021/03/16

NPM とは Node.js のパッケージマネージャーです。

Node.js で動くパッケージをインストール・アンインストールするには npmコマンドを実行します。

PHPでいう、composer の役割ですね。

今回はnpmコマンドについてまとめてみました。

 

事前知識

npm(Node Package Manager)とは

・Node.js のモジュール管理ツール
・フロントエンドで使用する Japascript のパッケージ(例:Vue や jQuery といった有名なフレームワークや Gulp などのビルドシステムなど)のインストールとバージョン管理に使用。
・Node.js をインストールすると npm もインストールされる

 

package.jsonとは

・アプリケーションのマニフェストファイル
・そのアプリケーションに必要なパッケージ名・バージョンがリストされる
・package.json にリストされたパッケージ情報を元に、アプリケーションに必要なパッケージを一括インストールすることができる。

 

node_modulesフォルダ

npm install コマンドを実行すると Laravel プロジェクト直下に生成されます。
・npm のインストール場所としてパッケージをインストールします。

 

コマンド INDEX

 

バージョン確認

npm が入っているかの確認に。


$ npm --version
$ npm -v

### Node.js
$ node --version
$ node -v

 

初期化

カレントディレクトリに package.json を作成します。


$ npm init

 
このコマンドを入力するとプロジェクト名やバージョンなどを聞かれます。答えていくと package.json が作成されます。

なお、Laravelではデフォルトで作成されます。

 

インストール


# グローバルな領域にインストール
$ npm install -g パッケージ名


# -g を付けないとローカルインストール
$ npm install パッケージ名


# --saveオプションを付与すると package.json の dependencies に依存関係が追記される
# dependencies には公開する際に必要なパッケージを記録する
$ npm install --save パッケージ名


# --save-devオプションを付与すると package.json の devDependencies に依存関係が追記される
# Gulp や Gulp で使うプラグインなど、開発時だけ必要となるときは付ける
$ npm install --save-dev パッケージ名


# package.json に書かれているすべてのパッケージをインストール
$ npm install
# package.json の dependencies に書かれているパッケージのみインストール
$ npm install --production


# バージョン指定してインストール
$ npm install パッケージ名@バージョン
$ npm install gulp@4.0.2

 

--save-dev すると、自動で package.json の devDependencies に追加されます。そして dependencies には追記されません。

git clone でクローンしてきて、必要なパッケージをインストールするときに npm install --production とすると、devDependencies はインストールされません。

逆に dependencies に入っているとインストールされてしまうので、Git Hub にソースを公開するときは使い分けできていると親切です。

 

アンインストール


# グローバルで削除
$ npm uninstall -g パッケージ名

# -g を付けないとローカルインストール
$ npm uninstall パッケージ名

# package.json の Dependencies 欄の記述も削除
$ npm uninstall --save パッケージ名

# package.json の devDependencies 欄からの削除
$ npm uninstall --save-dev

 

インストール済みパッケージの確認


# パッケージインストールリスト
$ npm list

# グローバルでインストールされているモジュール一覧
$ npm list -g

 

パッケージのアップデート


$ npm up

 
以上です。

本庄マサノリ

仕事で Laravel を使っています。気づいたことや新しい発見など情報を発信していきます。問い合わせはこちら

>> Twitter をフォローする

 

-周辺知識