Node.js 吞下nodemon,观察文件的变化;应用程序崩溃-在启动前等待文件更改;
我正在尝试自动执行一个简单的gulp任务,以运行/调试节点,监视文件更改,并在任何文件更改时重新启动节点。我见过的最流行的用于此用途的方法,但当发生文件更改事件时,(吞咽-Node.js 吞下nodemon,观察文件的变化;应用程序崩溃-在启动前等待文件更改;,node.js,gulp,Node.js,Gulp,我正在尝试自动执行一个简单的gulp任务,以运行/调试节点,监视文件更改,并在任何文件更改时重新启动节点。我见过的最流行的用于此用途的方法,但当发生文件更改事件时,(吞咽-nodemon崩溃: [nodemon] app crashed - waiting for file changes before starting... 崩溃的发生是不一致的,因此有时我必须手动发送一个SIGINT来停止节点进程(这种情况违背了nodemon的目的)。 我希望能够运行一个可以监视文件、运行或调试节点的gu
nodemon
崩溃:
[nodemon] app crashed - waiting for file changes before starting...
崩溃的发生是不一致的,因此有时我必须手动发送一个SIGINT
来停止节点进程(这种情况违背了nodemon的目的)。
我希望能够运行一个可以监视文件、运行或调试节点的gulp任务。如何在没有nodemon崩溃的情况下实现这一点呢?这并不奇怪,但是下面应该可以实现您想要的
'use strict'
const gulp = require('gulp');
const spawn = require('child_process').spawn;
gulp.task('debug', function() {
let child = spawn("node", ["debug", "./server.js"], { stdio: 'inherit' });
gulp.watch([__dirname + "/*.js", '!gulpfile.js'], function(event) {
console.log(`File %s was %s.`, event.path, event.type);
if (child) {
child.kill();
child = spawn("node", ["debug", "./server.js"], { stdio: 'inherit' });
}
});
});
这假设您正在监视\uuu dirname
中的任何js
文件的更改,gulpfile除外