不知道为什么会这样。。。一直在谷歌搜索,但我似乎找不到答案。我有2个Mac,在每个Mac上都有一个包含相同package.json文件的文件夹,其中包含20个依赖项的列表。当我在…上运行“ npm install”时
计算机1: 将所有列出的依赖项安装在自己的文件夹中-总共20个文件夹。
计算机2: 安装了大量不同的文件夹-确切地说是561。这些额外的文件夹似乎是我在package.json中列出的主要依赖项的依赖项。
只是好奇为什么会发生这种情况,以及是否有办法控制npm下载和分组依赖项的方式?我感谢计算机下载561个文件夹时使用的整体文件较小,但是在某些情况下,我需要组织分组的依赖项。
谢谢!
NPM的最新版本可以进行“更扁平化”的安装,其依赖项嵌套的深度不如早期版本。听起来如果比较NPM版本,则会发现两台计算机上的版本不同。
这是有关旧方法的文章:
npm以一种奇怪的递归方式安装依赖项
并且,更改有关新方法的日志信息:
https://github.com/npm/npm/blob/master/CHANGELOG.md#flat-flat- flat
这样做的主要优点之一是可以共享(而不是重复)一个以上的父模块所使用的模块依赖性。在新的平面方案中,只有一个以上的模块副本用于多个地方,而不是多个副本。