ワークスペース機能を使うと1つのプロジェクトで複数のnpmパッケージを管理できるようになり、かつnode_modulesを1箇所にまとめることができます。

設定

プロジェクトルートのpackage.jsonへは以下のような設定が必要になります。

{
  "private": true,
  "workspaces": [
    "packages/**/*",
    "example"
  ]
}

private:trueは必ず設定が必要です。workspacesへはパッケージとなる(package.jsonを持っている)ディレクトリへのパターンや相対パスを記述します。

これで例えば、examplepackages/foo/hogeといったディレクトリがpackage.jsonを持っていればnpm管理プロジェクトだとすることができます。
この状態でexamplepackages/foo/hoge双方でreactをインストールするとルートのnode_modulesだけにreactディレクトリが作られます。(bin系は各ディレクトリに作られる)

ルートへのパッケージインストール

ルートに共通パッケージをインストールしたい時などは-Wオプションが必要になります。

JavaScript で飯食べたい歴約 5 年、 純( nju33 ) によるノートサイトです。

このサイトではドリンク代や奨学金返済の為、広告などを貼らせて頂いてますがご了承ください。

Change Log