Package.json est-il censé être modifié manuellement? Un programme comme npm ne pourrait-il pas simplement parcourir les fichiers, voir les instructions "require", puis l'utiliser pour placer les entrées nécessaires dans le fichier package.json? Y a-t-il des programmes comme ça?
412
npm link
Réponses:
Le fichier package.json est utilisé par npm pour en savoir plus sur votre projet node.js.
Utilisation
npm init
pour générer des fichiers package.json pour vous!Il est fourni avec npm. Lisez sa documentation ici: https://docs.npmjs.com/cli/init
En outre, il existe un outil officiel que vous pouvez utiliser pour générer ce fichier par programme: https://github.com/npm/init-package-json
la source
npm init
était exactement ce que je cherchais! Aussi après cela, je cours généralementnpm shrinkwrap
pour créer unnpm-shrinkwrap.json
fichiernpm init
: Utiliseznpm install <pkg> --save
ensuite pour installer un package et l'enregistrer en tant que dépendance dans le fichier package.json.npm init
dans la console du gestionnaire de packages à partir de Visual Studio 2015, il s'affiche[...] Press ^C at any time to quit.
et s'arrête sans rien demander ni créer le fichier json. Suis-je en train de manquer quelque chose?npm init --force --yes
est le seul liner à avoir généré ce fichierTout d'abord, courez
... vous posera quelques questions ( lisez d'abord ) sur votre projet / package, puis générera un fichier package.json pour vous.
Ensuite, une fois que vous avez un fichier package.json, utilisez
ou
... d'installer une dépendance et ajouter automatiquement à votre
package.json
dedependencies
liste.(Remarque: vous devrez peut-être modifier manuellement les plages de versions pour vos dépendances.)
la source
package.json
, il est généralement géré automatiquement.--save
n'est plus nécessaire dans les nouvelles versions de npmJe viens d'écrire un script simple pour collecter les dépendances dans ./node_modules. Cela répond à mes exigences pour le moment. Cela peut en aider d'autres, je le poste ici.
Dans mon cas, le script ci-dessus génère:
Maintenant, vous pouvez les copier-coller. S'amuser!
la source
npm ls --depth=0
imprimera plus ou moins la même chose (je ne sais pas si c'était le cas en 2012)a
, et le paquet aa
besoin de programmesb
etc
, ce script va afficher tous les niveaux, donca
,b
, cec
qui est pas correct. Il devrait seulement sortira
, les sous-paquets seront automatiquement résolus.npm init
pour créer le fichier package.json, puis vous utilisez
ls node_modules/ | xargs npm install --save
pour remplir les modules que vous avez dans le dossier node_modules.
Edit: @paldepind a souligné que la deuxième commande est redondante car
npm init
ajoute maintenant automatiquement ce que vous avez dans votre dossier node_modules /. Je ne sais pas si cela a toujours été le cas, mais maintenant au moins, cela fonctionne sans la deuxième commande.la source
npm init
avait automatiquement ajouté des dépendances basées sur les packages installés et qu'il n'était pas nécessaire d'exécuter la deuxième commande.npm dedupe
, ce qui extrait les dépendances partagées entre vos modules de ces modules et les stocke au niveau supérieur de votrenode_modules
répertoire. Mais ça ne touche paspackage.json
! Avec cela, vous pouvez valider et partager votre configuration dédupliquée.Ligne de commande :
va créer le fichier package.json
Pour installer, mettre à jour et désinstaller des packages sous dépendances dans le fichier package.json:
Ligne de commande :
ajoutera automatiquement la dernière version du package sous dépendances dans le fichier package.json
EX:
Ligne de commande :
ajoutera également automatiquement la dernière version du package sous dépendances dans le fichier package.json
si vous avez besoin d'une version spécifique pour un package, utilisez cette ligne de commande :
ajoutera automatiquement une version spécifique du package sous les dépendances dans le fichier package.json
EX:
si vous avez besoin d'une plage de version spécifique pour un package, utilisez cette ligne de commande :
ajoutera automatiquement la dernière version du package entre la plage de versions sous dépendances dans le fichier package.json
EX:
Pour plus de détails sur la façon d'écrire la version du package npm Doc
Ligne de commande :
mettra à jour les packages dans le fichier package.json et ajoutera automatiquement la version mise à jour pour tous les packages sous dépendances dans le fichier package.json
Ligne de commande :
supprimera automatiquement le package des dépendances dans le fichier package.json et supprimera le package du dossier node_module
la source
La course
npm init -y
fait votrepackage.json
avec tous les défauts.Vous pouvez ensuite modifier en
package.json
conséquenceCela permet de gagner du temps plusieurs fois en empêchant d'appuyer
enter
sur chaque commande dansnpm init
la source
Vous pouvez maintenant utiliser Yeoman - Outil d'échafaudage d'application Web moderne sur le terminal de noeud en 3 étapes simples.
Tout d'abord, vous devrez installer yo et les autres outils requis:
Pour échafauder une application Web, installez le générateur Generator-Webapp :
Exécutez yo et ... vous avez terminé:
Yeoman peut écrire du code passe-partout pour l'ensemble de votre application Web ou contrôleurs et modèles. Il peut lancer un serveur Web en direct pour les modifications et la compilation; vous pouvez non seulement exécuter vos tests unitaires, minimiser et concaténer votre code, optimiser les images, etc.
Yeoman (yo) - outil d'échafaudage qui offre un écosystème d'échafaudages spécifiques au framework, appelés générateurs, qui peuvent être utilisés pour effectuer certaines des tâches fastidieuses mentionnées précédemment.
Grunt / gulp - utilisé pour construire, prévisualiser et tester votre projet.
Bower - est utilisé pour la gestion des dépendances, afin que vous n'ayez plus à télécharger manuellement vos bibliothèques frontales.
la source
Basé sur la réponse de Pylinux, voici une solution pour Windows OS,
J'espère que cela aide.
la source
utilisez la commande npm init -f pour générer le fichier package.json et ensuite utilisez --save après chaque commande afin que chaque module soit automatiquement mis à jour dans votre package.json pour ex: npm install express --save
la source
1. Choix
Si vous git et utilisateur GitHub:
generate-package
plus simplement quenpm init
.autre
et / ou vous n'aimez pas le
package.json
modèle, qui génère un package ounpm init
génère:vous pouvez générer votre propre modèle via des applications d'échafaudage comme générer , naviguer ou yeoman .
2. Pertinence
Cette réponse est pertinente pour mars 2018. À l'avenir, les données de cette réponse pourraient être obsolètes.
L'auteur de cette réponse a personnellement utilisé generate-package en mars 2018.
3. Limitations
Vous devez utiliser git et GitHub pour utiliser generate-package.
4. Démonstration
Par exemple, je crée un dossier vide
sasha-npm-init-vs-generate-package
.4.1. générer-package
Commander:
package.json
:4.2. npm init
Je pense que,
generate-package
plus simplement, celanpm init
.5. Personnalisation
Cela crée votre propre
package.json
modèle, voir des exemples de génération et yeoman .la source