Je viens de commencer à apprendre React, et Facebook aide à simplifier la configuration initiale en fournissant le projet prêt à l'emploi suivant .
Si je dois installer le projet squelette, je dois taper npx create-react-app my-app
en ligne de commande.
Je me demandais pourquoi le Facebook dans Github a npx create-react-app my-app
plutôt que npm create-react-app my-app
?
javascript
npm
npx
Paresh Maniyar
la source
la source
create-react-app
est un générateur.npx
va sur Internet , télécharge le paquet temporairement afin qu'il puisse l'exécuter ( np x ). Ce que vous obtenez (et que vous voulez) est la sortie, qui est enregistrée localement, où vous avez exécuté la commande.Réponses:
Présentation de npx: un exécuteur de packages npm
NPM
- Gérer les paquets , mais ne rend pas la vie facile d' exécuter tout.NPX
- Un outil pour exécuter des packages Node.NPM
en lui-même n'exécute pas n'importe quel package. en fait, il n'exécute aucun paquet. Si vous souhaitez exécuter un package à l'aide de NPM, vous devez spécifier ce package dans votrepackage.json
fichier.Lorsque les exécutables sont installés via des packages NPM, NPM les relie:
./node_modules/.bin/
répertoire.bin/
répertoire global (par exemple/usr/local/bin
) sous Linux ou%AppData%/npm
sous Windows.Documentation à lire
NPM:
On pourrait installer un paquet localement sur un certain projet:
Supposons maintenant que vous souhaitez que NodeJS exécute ce package à partir de la ligne de commande:
Ce qui précède échouera . Seuls les packages installés globalement peuvent être exécutés en tapant uniquement leur nom .
Pour résoudre ce problème et le faire exécuter, vous devez taper le chemin local:
Vous pouvez techniquement exécuter un package installé localement en modifiant votre
packages.json
fichier et en ajoutant ce package dans lascripts
section:Exécutez ensuite le script en utilisant
npm run-script
(ounpm run
):NPX:
npx
vérifiera s'il<command>
existe dans$PATH
ou dans les binaires du projet local et l'exécutera. Ainsi, pour l'exemple ci-dessus, si vous souhaitez exécuter le package installé localement,some-package
tout ce que vous devez faire est de taper:Un autre avantage majeur de
npx
est la possibilité d'exécuter un package qui n'a pas été précédemment installé:L'exemple ci-dessus va générer un passe-
react
partout d'application dans le chemin d'accès de la commande et garantit que vous utilisez toujours la dernière version d'un générateur ou d'un outil de construction sans avoir à mettre à niveau chaque fois que vous êtes sur le point de l'utiliser.Questions connexes:
la source
node.js
, n'utilisez pas , non? Pourquoi est-il disponible via 'npm' (le gestionnaire de packages de nœuds)?./node_modules/.bin
à votre $ PATH et NPX n'est pas nécessaire.npx est un exécuteur de packages npm (x signifie probablement eXecute). L'utilisation typique consiste à télécharger et à exécuter un package temporairement ou pour des essais.
create-react-app est un package npm qui ne devrait être exécuté qu'une seule fois dans le cycle de vie d'un projet. Par conséquent, il est préférable d'utiliser npx pour l'installer et l'exécuter en une seule étape.
Comme mentionné dans la page de manuel https://www.npmjs.com/package/npx , npx peut exécuter des commandes dans le PATH ou à partir de node_modules / .bin par défaut.
Remarque: Avec quelques recherches, nous pouvons constater que create-react-app pointe vers un fichier Javascript (éventuellement vers /usr/lib/node_modules/create-react-app/index.js sur les systèmes Linux) qui est exécuté dans l'environnement de nœud . Il s'agit simplement d'un outil global qui effectue certaines vérifications. La configuration proprement dite se fait par react-scripts, dont la dernière version est installée dans le projet. Consultez https://github.com/facebook/create-react-app pour plus d'informations.
la source
NPM est un gestionnaire de packages, vous pouvez installer des packages node.js à l'aide de NPM
NPX est un outil pour exécuter des packages node.js.
Peu importe que vous ayez installé ce package globalement ou localement. NPX l'installera temporairement et l'exécutera. NPM peut également exécuter des packages si vous configurez un fichier package.json et l'incluez dans la section de script.
np M - Gestionnaire
np X - Exécuter - facile à retenir
la source
NPX:
Depuis https://www.futurehosting.com/blog/npx-makes-life-easier-for-node-developers-plus-node-vulnerability-news/ :
la source
NPM can just install local versions
- Pas correcte.npm
peut installer global et c'est une pratique courante.npx
exécute une commande d'un package sans l'installer explicitement.Cas d'utilisation:
Syntaxe:
Le forfait est facultatif:
Par exemple:
En savoir plus sur
command
:la source
Définition simple:
npm - Gestionnaire de packages Javascript
npx - Exécute les binaires du package npm
la source
Voici un exemple de NPX en action: npx cowsay hello
Si vous tapez cela dans votre terminal bash, vous verrez le résultat. L'avantage de ceci est que npx a temporairement installé cowsay. Il n'y a pas de pollution de colis car cowsay n'est pas installé en permanence. C'est idéal pour les colis uniques où vous voulez éviter la pollution des colis.
Comme mentionné dans d'autres réponses, npx est également très utile dans les cas où (avec npm) le package doit être installé puis configuré avant de s'exécuter. Par exemple, au lieu d'utiliser npm pour installer puis configurer le fichier json.package, puis appeler la commande run configurée, utilisez simplement npx à la place. Un exemple réel: npx create-react-app my-app
la source