Respuestas:
El módulo forever tiene un concepto de múltiples servidores node.js, y puede iniciar, reiniciar, detener y enumerar los servidores que se ejecutan actualmente. También puede observar el cambio de archivos y reiniciar el nodo según sea necesario.
Instálalo si aún no lo tienes:
npm install forever -g
Después de instalarlo, llame al forevercomando: use la -wbandera para ver el archivo en busca de cambios:
forever -w ./my-script.js
Además, puede mirar el directorio e ignorar patrones:
forever --watch --watchDirectory ./path/to/dir --watchIgnore *.log ./start/file
forever -c babel-node -w --watchDirectory ./server ./server/index.js pero lamentablemente parece que se envía para siempre a una picada y reinicia el servidor con demasiada frecuencia, lo que resulta en errores de puerto ya en uso ... ¿hay alguna manera de agregar una pausa después de reiniciar?
-tu killTreeopción requerida, supongo que se estaba matando el nodo babel, pero no el servidor Express que generó.
Una buena opción es Node-supervisor y Node.js Restart on File Change es un buen artículo sobre cómo usarlo, generalmente:
npm install supervisor -g
y después de migrar a la raíz de su aplicación, use lo siguiente
supervisor app.js
server.jsporque se reiniciaba constantemente, esto se debía a que mi servidor construía el cliente en el arranque y, por lo tanto, cambiaba los archivos. supervisor --watch server.js server.jsresuelto.
Deberías mirar algo como nodemon .
Nodemon observará los archivos en el directorio en el que se inició nodemon, y si cambian, reiniciará automáticamente su aplicación de nodo.
Ejemplo:
nodemon ./server.js localhost 8080
o simplemente
nodemon server
Varios paquetes de NPM están disponibles para facilitar esta tarea.
Para desarrollo
Para producción (con funcionalidad extendida como agrupación, implementación remota, etc.)
npm install -g pm2npm install -g strongloopComparación entre Siempre, PM2, y StrongLoop se puede encontrar en StrongLoop página web 's.
También puedes probar nodemon
Para instalar Nodemon
npm install -g nodemon
Para usar Nodemon
Normalmente comenzamos un programa de nodo como:
node server.js
Pero aquí tienes que hacer como:
nodemon server.js
nodo-dev
node-dev es una gran alternativa tanto para nodemon como para supervisor para desarrolladores a los que les gusta recibir notificaciones de gruñido (o libnotificar) en su escritorio cada vez que el servidor se reinicia o cuando se produce un error o cambio en el archivo.
Instalación:
npm install -g node-dev
Use node-dev, en lugar de node:
node-dev app.js
Notificación al cambiar el archivo para que el servidor se inicie automáticamente
consola fuera puesto
runy cómo se compara con las alternativas existentes. Simplemente descartar otra opción solo contribuye a la paradoja de la elección. (Afortunadamente runno se ha actualizado desde 2015, por lo que ahora no es una gran opción.)
Sigue los pasos:
npm install --save-dev nodemon
Agregue las siguientes dos líneas a la sección "script" de package.json:
"start": "node ./bin/www",
"devstart": "nodemon ./bin/www"
Como se muestra abajo:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node ./bin/www",
"devstart": "nodemon ./bin/www"
}
npm run devstarthttps://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/skeleton_website