Je tente de modifier un package npm avec plusieurs dépendances. En tant que tel, l' npm install -g .
exécution est longue. Ai-je d'autres options en plus de supprimer les dépendances de packages.json?
L' option --no-optional est désormais implémentée conformément à cette documentation https://docs.npmjs.com/cli/install :
The --no-optional argument will prevent optional dependencies from being installed.
En parcourant les documents, il ne semble pas avoir d'option au-delà du --no-optional
commutateur.
Ce SO Q&A intitulé: npm install
installe toutes les dépendances de mon projet sur le réseau, même si elles sont déjà installées ou disponibles à partir du cache semble impliquer qu'il y a un --skip-installed
commutateur. Mais la documentation ne fait aucune référence à ce commutateur.
Si vous développez cela node_module
vous - même, ne perdez pas votre temps en npm install
s, utilisez plutôt npm link
.
En bref, vous créez un lien symbolique vers le dossier de votre module sur un dossier global appartenant à npm, puis dans votre dossier d'application, vous demandez à npm d'utiliser ce dossier lié symbolique.
Cela fait que les modifications que vous apportez dans le dossier du module se reflètent immédiatement dans votre application.
Voici les principales étapes (copiées à partir du tutoriel lié ci-dessous, assurez-vous de lire le tutoriel pour les accrochages importants):
src/my_module
npm link
". Cela crée un lien symbolique d'un dossier global vers le src/my_module
dossier.src/my_app
npm link my_module
. Ce lien renvoie node_modules/my_module
à ce projet dans le dossier global, de sorte que les require
appels à la recherche d' my_module
éolien en chargeant à partir de votre dossier de développement,
src/my_module
.Voir ce tutoriel: http://justjs.com/posts/npm-link-developing-your-own-npm-modules-without-tears
Et les documents officiels pour npm link
: https://docs.npmjs.com/cli/link
Cette fonctionnalité a été demandée en 2010, mais malheureusement, elle a été ignorée et fermée: https://github.com/npm/npm/issues/340
J'ai essayé un tas d'options et j'ai finalement trouvé une solution assez simple - renommer package.json en autre chose avant l'installation de doint npm, puis revenir à la fin de l'installation:
la source
--ignore-package
ou quelque chose.