Lorsque vous utilisez "npm install", les modules sont chargés et disponibles dans toute votre application, qu'ils soient des "devDependencies" ou des "dependencies". L'idée principale est que tout ce que votre package.json définit comme une dépendance (quel que soit le type) est installé dans node_modules.
La différence entre les dependencies/devDependencies/optionalDependencies réside dans ce que les consommateurs de votre code peuvent faire avec npm pour installer ces ressources.
Conformément à la documentation : https://npmjs.org/doc/json.html...
Si quelqu'un envisage de télécharger et d'utiliser votre module dans son programme, il ne voudra probablement pas télécharger et construire le framework de test ou de documentation externe que vous utilisez.
Dans ce cas, il est préférable de lister ces éléments supplémentaires dans un hash devDependencies.
Ces éléments seront installés chaque fois que le drapeau de configuration --dev est défini. Ce drapeau est défini automatiquement lors de l'exécution de npm link ou de npm install à la racine d'un package, et peut être géré comme tout autre paramètre de configuration npm. Consultez config(1) pour en savoir plus sur le sujet.
Cependant, pour résoudre cette question, si vous voulez INSTALLER UNIQUEMENT les "dependencies" en utilisant npm, la commande suivante est :
npm install --production
Cela peut être confirmé en examinant le commit Git qui a ajouté ce filtre (avec quelques autres filtres [énumérés ci-dessous] pour fournir cette fonctionnalité).
Autres filtres qui peuvent être utilisés avec npm :
--save => met à jour les entrées des dépendances dans le fichier json
--force => force le téléchargement des entrées distantes si elles existent sur le disque
--force-latest => force la dernière version en cas de conflit
--production => NE PAS installer les devDependencies du projet
--no-color => n'affiche pas les couleurs
@dmarr essayez d'utiliser npm install --production
1 votes
Selon le doc, vous avez raison, le --dev installe les devdeps, sinon, seules les deps. npmjs.org/doc/json.html. Je sais que cela fonctionne pour les packages nommés, du moins.
2 votes
Si vous tombez sur cette question en 2015, l'option --save-dev fait exactement ce qui est demandé dans cette question.
2 votes
Cette réponse stackoverflow.com/a/22004559/3718119 donne une bonne explication des différences entre
dependencies
etdevDependencies
et quand chacun est utilisé.