0
votes

Modifier le paquet.json sur ce qui est dans node_modules

Je viens de recevoir un projet que quelqu'un d'autre travaille sur. Quand je l'ai copié, je dois copier le dossier Node_Modules ou cela ne fonctionne pas. Existe-t-il un moyen d'avoir le package.json être mis à jour en fonction de ce qui est dans le répertoire node_modules ?


3 commentaires

Node_Modules Des paquets sont fournis grâce à package.json . Vous devez supprimer le dossier node_modules , puis re-exécuter NPM installer / le fil .


Sonne complètement en arrière.


C'est super recul. Lorsque j'exécute une installation NPM après avoir supprimé Node_Modules, le code ne fonctionne plus. C'est le problème que j'ai. Je pense que les modules ont été copiés et collés trop de fois, et le paquet.json n'a jamais été mis à jour


3 Réponses :


0
votes

dans npm c'est package.json qui génère node_modules, pas l'inverse. Vous devriez obtenir le paquet.json avec toutes les dépendances et exécuter NPM install


1 commentaires

Le problème est que je pense que la personne qui a créé à l'origine le projet a été de copier des modules d'ailleurs. Donc, lorsque j'installez NPM après avoir retiré les modules de noeuds actuels, le projet cesse de fonctionner.



1
votes

Ces deux étapes sont en arrière. nœud_modules / ne doit pas être vérifié dans git ou partagé d'un ordinateur à un autre. C'est juste une représentation de ce qui est dans package.json . Ce fichier, pas le répertoire, est la source de la vérité pour vos dépendances JavaScript. Si ce n'est pas le cas sur votre projet, vous devrez résoudre le problème d'abord de faire un travail sur celui-ci.

Tout d'abord, supprimer nœud_modules : xxx

ou, par RCDMK's Répondre, renommez-le de sorte que vous avez une référence de ce qui était là: xxx

alors, recréez-le de package.json avec votre outil de choix CLI: xxx

enfin, Travailler à travers des problèmes du code causé par les nouvelles dépendances. Celles-ci montreront comme étant des erreurs dans votre journal de serveur, votre console de navigateur ou votre sortie. Si vous avez créé un node_modules_backup , comparez les sous-répertoires à votre nouveau node_modules pour voir ce qui manque.


4 commentaires

Le problème est que je pense que la personne qui a créé à l'origine le projet a été de copier des modules d'ailleurs. Donc, lorsque j'installez NPM après avoir retiré les modules de noeuds actuels, le projet cesse de fonctionner.


Merci @ lévif1. J'ai mis à jour ma réponse pour mieux faire face à la situation que vous avez décrite.


Alors, passez-vous et trouvez le problème des enfants essentiellement?


@ lévif1 oui, c'est l'idée.



1
votes

Comme d'autres signalés, le problème est déjà là et une façon de traiter avec elle est de renommer le dossier Node_Modules , exécuter NPM installer ou installation de fil puis essayez d'exécuter l'application et de déterminer les dépendances manquantes.

Vous pouvez avoir une image plus facile de ce qui manque si vous exécutez une commande arborescence dans l'ancien nœud_modules et comparez à une commande sortie du nouveau. Vous n'avez pas besoin d'ajouter toutes les différences, juste le niveau supérieur.

au lieu de arborescence vous pouvez ls -1 (ou dir / d / b si sous Windows).


0 commentaires