2016-12-20 2 views
2

que je fais le NG2 mise en route tutoriel, décrit here: qui sont actuellement composées uniquement d'un package.json par défaut sur lequel je fais un npm installActuellement, 280 dépendances sont-elles requises pour utiliser angular2?

Les références package.json deux dépendances de dev, tous les autres sont d'abord ou deuxième dépendances de niveau requises pour angulaire.

Maintenant, mon module_modules compte au total 280 paquets avec 10.648 fichiers et 986 répertoires.

Je suis peut-être en retard à la partie, mais est-ce que je peux condenser ou déployer l'ensemble minimum total de ces parties lors du déploiement? Et je ne parle pas de minification.

Est-ce que tout le monde jette tout simplement ~ 11k de fichiers supplémentaires sur un serveur Web pour afficher 6 applications angulaires? Ignorant également négligemment environ 280 licences?

En quoi consistent toutes ces licences? Comment puis-je être sûr que je ne viole pas les termes de licence sans vérifier chacun de ces 280 paquets? Il existe des scénarios où, dans un environnement d'entreprise, la validation d'une licence est absolument cruciale pour pouvoir utiliser quelque chose.

Je veux dire il y a un paquet de sous, dont le droit d'auteur est détenu par Wal-Mart, appelé hoek

Ce n'est pas une diatribe, je ne veulent utiliser angulaire mais je ne veux pas aussi être tenu responsable pour les violations de licence possibles en poussant tous ces modules de noeud.

Répondre

2

La plupart de ces paquets proviennent des dépendances de développement. Lorsque vous déployez sur un serveur réel que vous voulez exécuter npm install --production et vous verrez la liste des paquets installés est beaucoup plus courte:

PS C:\play\angular-quickstart> npm install --dry-run --production 
[email protected] C:\play\angular-quickstart 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- @angular/[email protected] 
+-- [email protected] 
+-- [email protected] 
+-- [email protected] 
+-- [email protected] 
| `-- [email protected] 
`-- [email protected] 

npm WARN [email protected] No description 
npm WARN [email protected] No repository field. 

Si vous passez en revue la sortie équivalente de la commande par défaut npm install vous verrez que presque tous les paquets sont listés comme dépendances de lite-server qui est le serveur web que vous utilisez pour les tests. En production, vous voudrez utiliser un vrai serveur web, donc vous n'avez besoin d'aucun de ces paquets.

+1

Oh boy, 273 dépendances proviennent des 2 dev, bien que je comprenne que le serveur Lite peut en nécessiter beaucoup. – Samuel