Gulp Nodemon - 如何让 Nodemon 在文件更改时退出

Gulp Nodemon - how do I make Nodemon exit on file change

目前我有一个非常简单的Gulp构建脚本:

const gulp = require('gulp');
const ts = require('gulp-typescript');
const tsProject = ts.createProject('tsconfig.json');
const del = require('del');
const nodemon = require('gulp-nodemon');

gulp.task('build-clean', function() {
    return del('dist');
});

gulp.task('build', ['build-clean'], function () {
    return gulp.src('src/**/*.ts')
        .pipe(tsProject())
        .pipe(gulp.dest('dist'));
});

gulp.task('start', ['build'], function () {
  nodemon({
    script: 'dist/app.js'
  , ext: 'js html'
  })
})

这会在 JSHTML 文件发生更改时重新加载页面。

这对开​​发很有用,但在生产中我想要完全相反的东西。如果我的文件发生变化,那是因为 git 推送到我的服务器。这意味着 Jenkins 将 运行,完成后 Jenkins 会将代码推送到我的网络文件夹。

如果 Jenkins 推送代码,我想停止这个 nodemon 服务器,因为将执行一个全新的 gulp-build,包括 Nodemon 服务器.

那么 - 如何让 nodemon 在文件更改后退出而不是重新启动?

也许你应该在生产中使用 node 而不是 nodemon

gulp.task('start', ['build'], function () {
  node({
    script: 'dist/app.js'
  , ext: 'js html'
  })
})