¿Cómo puedo ejecutar el script de inicio desde un archivo package.json con Nodemon?
¿Cómo puedo ejecutar el script de inicio desde un archivo package.json con Nodemon?
Respuestas:
Este será un comando simple para esto
nodemon --exec npm start
npm start
pero no inicia el servidor de nodo para mí ... ¿cómo sabría dónde está server.js?
En el paquete json:
{
"name": "abc",
"version": "0.0.1",
"description": "my server",
"scripts": {
"start": "nodemon my_file.js"
},
"devDependencies": {
"nodemon": "~1.3.8",
},
"dependencies": {
}
}
Luego desde la terminal puedes usar npm start
Instalación de Nodemon: https://www.npmjs.com/package/nodemon
npm start
fallará en producción por falta de nodemon?
npm run start
nonpm start
npm start
es un alias denpm run start
Tengo un archivo TypeScript llamado "server.ts". Los siguientes scripts npm configuran Nodemon y npm para iniciar mi aplicación y monitorear cualquier cambio en los archivos TypeScript:
"start": "nodemon -e ts --exec \"npm run myapp\"",
"myapp": "tsc -p . && node server.js",
Ya tengo Nodemon en dependencias. Cuando lo ejecute npm start
, le pedirá a Nodemon que monitoree sus archivos usando el -e
conmutador y luego llamará al myapp
script npm, que es una combinación simple de transpilar los archivos mecanografiados y luego iniciar el server.js resultante. Cuando cambio el archivo TypeScript, debido al -e
cambio, ocurre el mismo ciclo y se generarán y ejecutarán nuevos archivos .js.
Utilizo Nodemon versión 1.88.3 en mi proyecto Node.js. Para instalar Nodemon, consulte https://www.npmjs.com/package/nodemon .
Verifique su package.json, vea si "scripts" ha cambiado así:
"scripts": {
"dev": "nodemon server.js"
},
server.js
es mi nombre de archivo, puede usar otro nombre para este archivo como app.js
.
Después de eso, ejecute esto en su terminal: npm run dev
Utilizar -exec
:
"your-script-name": "nodemon [options] --exec 'npm start -s'"
nodemon [options] --exec 'npm start -s'
si quieres hacerlo desde la línea de comandos.
Primero cambie su archivo package.json ,
"scripts":
{
"start": "node ./bin/www",
"start-dev": "nodemon ./app.js"
},
Después de eso, ejecuta el comando
npm run start-dev
app.js
estás pasando por alto todo lo que ./bin/www
hace ...
En el archivo package.json. cambiar archivo como este
"scripts":{
"start": "node ./bin/www",
"start-dev": "nodemon ./app.js"
},
y luego ejecute npm run start-dev
Nodemon emite eventos sobre cada cambio de estado; iniciar, reiniciar falla, etc. Puede agregar un archivo de configuración de Nodemon (nodemon.json) así:
{
"events": {
"start": "npm run *your_file*"
}
}
Lea más en Eventos de Nodemon: ejecute tareas al iniciar el servidor, reiniciar, bloquear, salir .
Si se instala globalmente,
"scripts": {
"start": "nodemon FileName.js(server.js)",
},
Asegúrese de haber instalado nodemon
globalmente:
npm install -g nodemon
Finalmente, si es un usuario de Windows, asegúrese de que la restricción de seguridad de Windows PowerShell esté habilitada .
Dependerá de los tipos de instalación de Nodemon. Si instala Nodemon globalmente usando comandos ( npm install nodemon --global
o npm install nodemon -g
), no tiene que especificar ningún script para Nodemon en su archivo package.json . Solo ejecutando el comandonodemon index.js
ejecutará su proyecto.
Pero si instala Nodemon localmente mediante un comando npm install nodemon
, debe especificar el script. Si lo nombra como inicio, entonces npm run start
o npm start
activará la ejecución del servidor.
// Absolutely no need for global installation
"scripts": {
"start": "nodemon index.js"
}
Si ha nodemon
instalado globalmente, simplemente ejecutar nodemon
en su proyecto ejecutará automáticamente el start
script desdepackage.json
.
Por ejemplo:
"scripts": {
"start": "node src/server.js"
},
De la documentación de nodemon :
nodemon también buscará la propiedad scripts.start en package.json (a partir de nodemon 1.1.x).
En paquete json
:
"scripts": {
"start": "node index",
"dev": "nodemon index"
},
"devDependencies": {
"nodemon": "^2.0.2"
}
Y en la terminal para desarrollar:
npm run dev
Y para iniciar el servidor regularmente:
npm start
Para evitar una instalación global, agregue Nodemon como una dependencia, luego ...
package.json
"scripts": {
"start": "node ./bin/www",
"start-dev": "./node_modules/nodemon/bin/nodemon.js ./bin/www"
},