Acabo de comenzar a aprender React, y Facebook ayuda a simplificar la configuración inicial al proporcionar el siguiente proyecto listo para usar .
Si tengo que instalar el proyecto esqueleto, tengo que escribir npx create-react-app my-app
en la línea de comandos.
Me preguntaba ¿por qué Facebook tiene en Github en npx create-react-app my-app
lugar de npm create-react-app my-app
?
javascript
npm
npx
Paresh Maniyar
fuente
fuente
create-react-app
Es un generador.npx
va a internet y descarga el paquete temporalmente para poder ejecutarlo ( np x ). Lo que obtienes (y quieres) es la salida, que se guarda localmente, donde ejecutaste el comando.Respuestas:
Presentamos npx: un corredor de paquetes npm
NPM
- Gestiona paquetes pero no facilita la vida ejecutando ninguno.NPX
- Una herramienta para ejecutar paquetes Node.NPM
por sí solo no ejecuta ningún paquete. no ejecuta ningún paquete de hecho. Si desea ejecutar un paquete usando NPM, debe especificar ese paquete en supackage.json
archivo.Cuando los ejecutables se instalan a través de paquetes NPM, NPM se vincula a ellos:
./node_modules/.bin/
directorio.bin/
directorio global (por ejemplo/usr/local/bin
) en Linux o en%AppData%/npm
Windows.Documentación que deberías leer
NPM:
Uno podría instalar un paquete localmente en un determinado proyecto:
Ahora supongamos que desea que NodeJS ejecute ese paquete desde la línea de comandos:
Lo anterior fallará . Solo los paquetes instalados globalmente pueden ejecutarse escribiendo su nombre solamente .
Para solucionar esto y ejecutarlo, debe escribir la ruta local:
Técnicamente, puede ejecutar un paquete instalado localmente editando su
packages.json
archivo y agregando ese paquete en lascripts
sección:Luego ejecute el script usando
npm run-script
(onpm run
):NPX:
npx
comprobará si<command>
existe$PATH
o en los binarios locales del proyecto y lo ejecutará. Entonces, para el ejemplo anterior, si desea ejecutar el paquete instalado localmente,some-package
todo lo que necesita hacer es escribir:Otra ventaja importante
npx
es la capacidad de ejecutar un paquete que no estaba instalado previamente:El ejemplo anterior generará una
react
plantilla de aplicación dentro de la ruta en la que se ejecutó el comando, y asegura que siempre use la última versión de un generador o herramienta de compilación sin tener que actualizar cada vez que esté a punto de usarlo.Preguntas relacionadas:
fuente
node.js
, ¿verdad? ¿Por qué está disponible a través de 'npm' (el administrador de paquetes de nodos)?./node_modules/.bin
a su $ PATH y no se necesita NPX.npx es un corredor de paquetes npm (x probablemente significa eXecute). El uso típico es descargar y ejecutar un paquete temporalmente o para pruebas.
create-react-app es un paquete npm que se espera que se ejecute solo una vez en el ciclo de vida de un proyecto. Por lo tanto, se prefiere usar npx para instalarlo y ejecutarlo en un solo paso.
Como se menciona en la página de manual https://www.npmjs.com/package/npx , npx puede ejecutar comandos en la RUTA o desde node_modules / .bin de forma predeterminada.
Nota: Con algunas excavaciones, podemos encontrar que create-react-app apunta a un archivo Javascript (posiblemente a /usr/lib/node_modules/create-react-app/index.js en sistemas Linux) que se ejecuta dentro del entorno del nodo . Esta es simplemente una herramienta global que realiza algunas comprobaciones. La configuración real se realiza mediante react-scripts, cuya última versión está instalada en el proyecto. Consulte https://github.com/facebook/create-react-app para obtener más información.
fuente
NPM es un administrador de paquetes, puede instalar paquetes node.js usando NPM
NPX es una herramienta para ejecutar paquetes node.js.
No importa si instaló ese paquete global o localmente. NPX lo instalará y ejecutará temporalmente. NPM también puede ejecutar paquetes si configura un archivo package.json e lo incluye en la sección de secuencia de comandos.
np M - Gerente
np X - Ejecutar - fácil de recordar
fuente
NPX:
De https://www.futurehosting.com/blog/npx-makes-life-easier-for-node-developers-plus-node-vulnerability-news/ :
fuente
NPM can just install local versions
- incorrecto.npm
puede instalar global y es una práctica común.npx
ejecuta un comando de un paquete sin instalarlo explícitamente.Casos de uso:
Sintaxis:
El paquete es opcional:
Por ejemplo:
Más sobre
command
:fuente
Definición simple:
npm - Administrador de paquetes Javascript
npx - Ejecuta binarios de paquetes npm
fuente
Aquí hay un ejemplo de NPX en acción: npx cowsay hello
Si escribe eso en su terminal bash, verá el resultado. El beneficio de esto es que npx ha instalado temporalmente cowsay. No hay contaminación del paquete ya que cowsay no está instalado permanentemente. Esto es ideal para paquetes únicos en los que desea evitar la contaminación del paquete.
Como se menciona en otras respuestas, npx también es muy útil en los casos en que (con npm) el paquete debe instalarse y luego configurarse antes de ejecutarse. Por ejemplo, en lugar de usar npm para instalar y luego configurar el archivo json.package y luego llamar al comando de ejecución configurado, solo use npx en su lugar. Un ejemplo real: npx create-react-app my-app
fuente