最近,我将npm更新为3.3.3版本,并在此之后启动了一个新项目。我的package.json如下:
{
"name": "my project",
"description": "my description",
"version": "1.0.0",
"license": "MIT",
"devDependencies": {
"gulp": "^3.8.11",
"gulp-uglify": "^1.4.1",
"gulp-watch": "^4.1.1",
"gulp-rename": "^1.2.2",
"gulp-concat": "^2.5.2",
"gulp-autoprefixer": "^2.1.0",
"gulp-sass": "^1.3.3",
"browser-sync": "^2.7.13"
}
}在执行npm install之后,我看到在node_modules目录中安装了352个模块。在更新npm之前,我只为另一个项目安装了10-15个模块,使用非常类似的package.json (有一些附加的依赖项)。
那么,你的问题是,为什么新版本的npm安装了这么多模块,我是否可以改变它的行为?
发布于 2015-10-08 19:14:07
这是npm@3的核心特性之一:如果可能的话,依赖项的所有依赖项现在都安装在同一个顶级node_modules目录中。
来自变革之路
现在,您的依赖项将以最大的平面安装。在可能的范围内,您的所有依赖项、它们的依赖项以及它们的依赖项都将安装在项目的
node_modules文件夹中,而不需要嵌套。只有当两个(或更多)模块有相互冲突的依赖时,您才会看到嵌套在另一个下面的模块。 这将有望消除大多数情况,windows用户的路径太长,无法让资源管理器和其他标准工具处理。
没有办法让它失效。
https://stackoverflow.com/questions/33023662
复制相似问题