Al desarrollar o depurar las aplicaciones Node.js, cuando modifica el archivo JS, siempre debe presionar CTRL+C para finalizar el programa y luego reiniciarlo. Incluso si modifica un pequeño parámetro pequeño, siempre debe repetir estas operaciones molestas constantemente. ¿Hay alguna forma de reiniciar automáticamente Node.js (o recargar el archivo) después de que el archivo se modifique para ahorrar tiempo? Al principio pensé en usar el módulo de reloj de Grunt para monitorear los cambios en los archivos, pero luego lo revisé en línea y descubrí que en lo que pensamos ya estaba pensado, y ha hecho un buen trabajo. El supervisor de nodo es un módulo de nodo.js que puede lograr este requisito.
Según las instrucciones en GitHub, el supervisor del nodo se usó originalmente para reiniciarse cuando la aplicación Node.js se bloquea en el servidor. Por supuesto, también puede monitorear los cambios en el archivo JS (o Coffeescript) de su proyecto, y luego reiniciarlo para facilitar nuestra depuración de la aplicación.
Método de instalación (instalado como módulo global):
La copia del código es la siguiente:
NPM Instalar supervisor -g
Suponiendo que su entrada principal del programa Node.js es App.js, entonces solo necesita ejecutar el siguiente comando para comenzar a monitorear los cambios de archivo.
La copia del código es la siguiente:
supervisor app.js
Supervisor también admite múltiples parámetros, enumerados de la siguiente manera:
La copia del código es la siguiente:
// La carpeta o el archivo JS a ser monitoreado de forma predeterminada es '.
-W |--Watch <WatchItems>
// para ignorar la carpeta monitoreada o el archivo JS
-i | --ignore <ignoreItems>
// El intervalo de tiempo (período) para monitorear los cambios de archivo, el valor predeterminado es el tiempo creado en Node.js
-P |--Poll-interval <MilliseConds>
// La extensión del archivo a ser monitoreada es 'nodo | js' de forma predeterminada
-e |-Extensions <Extensions>
// La aplicación principal que se ejecutará predeterminada es 'nodo'
-x | --exec <secutable>
// Habilitar el modo de depuración (use -Bandera de DEBUG para iniciar el nodo)
--depurar
// Modo silencioso, no se muestra información de depuración
-Q |-Quiet
ejemplo:
La copia del código es la siguiente:
supervisor myapp.js
supervisor -w py_scripts -e 'py' -x python myapp.py
supervisor -w lib, server.js, config.js, server.js
Productos similares que implementan la misma función incluyen Run.js y Nodeman, que nunca he usado. Sin embargo, desde la perspectiva del documento, el primero es el que se puede usar en 5 minutos, al igual que el supervisor, y las funciones son ligeramente más débiles que el supervisor; Este último tiene más características, y los documentos correspondientes son particularmente largos, y se estima que llevará al menos media hora estudiar a fondo. El cual elegir depende de las necesidades del proyecto y las preferencias personales.