2016-11-07 29 views
-7

我是Angular和Node的新手,并且正在跟随官方Angular2 documentationnpm install使用官方Angular2快速入门教程创建267个子文件夹

在步骤1中,建议您创建的package.jsontsconfig.jsonsystemjs.config.js通过复制样本代码(我有完全一样)。然后指示您从指向这些文件所在文件夹的命令propmt运行npm install

所以,我已经完成了这个(完全按照指示)与Windows的Node.js v7.0和命令完成后,我的node_modules文件夹现在包含267个子文件夹!

enter image description here

这不可能是正确的,可以吗?这里的的package.json代码:

{ 
    "name": "angtest", 
    "version": "1.0.0", 
    "scripts": { 
    "start": "tsc && concurrently \"tsc -w\" \"lite-server\" ", 
    "lite": "lite-server", 
    "tsc": "tsc", 
    "tsc:w": "tsc -w" 
    }, 
    "licenses": [ 
    { 
     "type": "MIT", 
     "url": "https://github.com/angular/angular.io/blob/master/LICENSE" 
    } 
    ], 
    "dependencies": { 
    "@angular/common": "~2.1.1", 
    "@angular/compiler": "~2.1.1", 
    "@angular/core": "~2.1.1", 
    "@angular/forms": "~2.1.1", 
    "@angular/http": "~2.1.1", 
    "@angular/platform-browser": "~2.1.1", 
    "@angular/platform-browser-dynamic": "~2.1.1", 
    "@angular/router": "~3.1.1", 
    "@angular/upgrade": "~2.1.1", 
    "angular-in-memory-web-api": "~0.1.13", 
    "core-js": "^2.4.1", 
    "reflect-metadata": "^0.1.8", 
    "rxjs": "5.0.0-beta.12", 
    "systemjs": "0.19.39", 
    "zone.js": "^0.6.25" 
    }, 
    "devDependencies": { 
    "@types/core-js": "^0.9.34", 
    "@types/node": "^6.0.45", 
    "concurrently": "^3.0.0", 
    "lite-server": "^2.2.2", 
    "typescript": "^2.0.3" 
    } 
} 
+1

欢迎来到Node.js和NPM的世界! – cartant

+0

我一直在SO多年,有超过10K代表,但我不能为了我的生活理解为什么这个合理的,有据可查的和解释的问题是投下来的。 –

+0

好吧,我没有倒下它,我只是投票把它作为一个骗局关闭。我认为这是一个合理的问题。当你第一次看到这样的依赖关系图时,这有点令人震惊。 – cartant

回答

0

我认为这是正确的。这些库通常具有很多具有子依赖关系的子依赖关系等等。与NPM v3npm install结构这些变化,他们现在都生活在顶层而不是子文件夹。

1

TL; DR: 没关系。

npm是为了让您安装的每个模块在node_modules下都有自己的文件夹。另外,在编写一个npm包时,鼓励您使用其他npm包作为依赖包,这些npm包有自己的依赖关系等等。所以,当然,在安装几乎任何npm包的时候,你会得到几十个依赖关系,它们都有自己的文件夹。

奖励:给this一个阅读。