如何让 NPM 只安装一个包?

How do I get NPM install just one package?

我在 MackBook 上 运行ning Node 6.3.0 我刚刚设置 运行ning OS X 10.11

我使用 Homebrew 安装了 Node,我注意到当我 运行 npm install 它安装了数十个额外的包。

例如,当我 运行 npm install gulp --save 它安装 gulp 但是当我查看 node_modules 目录时,我看到看起来像 30 或 40 个额外的文件夹。这与我 运行 在家里的 Linux 盒子上使用 npm 时不同。当我这样做时,我只看到一个目录。

我做错了什么吗?

您可能在 Linux 盒子上使用旧版本的 npm (< 3)。在 npm 3 中,他们改变了存储依赖项的方式,并尝试扁平化依赖项树。例如如果你有一个项目 A 依赖于 B 并且 B 依赖于 C 它看起来像这样:

npm 2:

A/node_modules/B/node_modules/C

npm 3:

A/node_modules/B
A/node_modules/C

希望对您有所帮助。