2

我已经实现了一项任务来运行服务器并对源文件的更改做出反应(重新加载)。

export function serveDev (gulp) {
  return () => {
    const bs = browserSync.create();
    const stream =  bs.init(config.browsersync.opts);
    gulp.watch(`${config.source}/components/**/*.js`, gulp.series('scripts'));
    gulp.watch(`${config.source}/js/**/*.js`, gulp.series('scripts'));
    gulp.watch(config.browsersync.watch).on('change', bs.reload);
    return stream;
  };
}

我正在使用gulp-4.0,并且正在从命令行运行此任务。

当用户点击CTRL+C时,正确终止此任务的正确实现是什么?

当我使用快捷键CTRL+C终止此正在运行的任务时,我收到以下错误:

The following tasks did not complete: serve, sync
Did you forget to signal async completion?

该任务正常工作,直到用户点击CTRL+C。当来自CTRL+C的信号到达任务时,会打印出上述错误。我想知道如何捕捉或如何对来自CTRL+C的终止信号做出正确反应?

4

1 回答 1

1

pkill您可以使用以下命令终止终端上的后台进程:

pkill gulp
于 2017-07-19T16:21:41.330 回答