gpt4 book ai didi

node.js - gulp/gulp-nodemon - Nodemon 永远不会启动

转载 作者:太空宇宙 更新时间:2023-11-04 01:36:30 25 4
gpt4 key购买 nike

我正在尝试设置一个 serve 任务来执行以下操作:

  1. 调用watch任务来监视任何源更改。 (监视任务调用 build 任务,将应用构建到“build”文件夹中)
  2. 使用 Nodemon ( gulp-nodemon ) 启动应用
  3. 如果发生源更改 - 重建应用并重新启动 nodemon

到目前为止,我已经编写了以下任务:

gulp.task('build', gulp.series(['lint'], () => {
del.sync(['./build/**/*.*']);
const tsCompile = gulp.src('./src/**/*.ts')
.pipe(gulpSourcemaps.init())
.pipe(project());

return tsCompile.js.pipe(gulpSourcemaps.write({
sourceRoot: file => path.relative(path.join(file.cwd, file.path), file.base)
}))
.pipe(gulp.dest('./build/'));
}));

gulp.task('watch', gulp.series(['build'], () => {
gulp.watch('./src/**/*.ts', gulp.series(['build']));
}));

gulp.task('serve', gulp.series(['watch'], () => {
return gulpNodemon({
script: './build/index.js',
watch: './build/'
});
}));

任务的当前行为是:

  1. 我通过输入 gulpserve 启动应用程序
  2. watch 任务被调用并且按预期工作
  3. Nodemon 未启动,进程卡在 watch 任务上。如果我更改任何源代码,watch 任务将被调用。

基本上,Nodemon 不会启动,只有 watch 任务正在工作。

我无法弄清楚为什么会发生以下行为,我想问是否有人知道问题可能是什么?

最佳答案

用户正在系列中运行watch任务。

但是,watch 任务不会结束,因此 nodemon 永远不会启动。

尝试使用gulp.parallel()而不是gulp.series():

gulp.task('serve', gulp.parallel('watch', () => {
return gulpNodemon({
script: './build/index.js',
watch: './build/'
});
}));

希望这能解决您的问题。

关于node.js - gulp/gulp-nodemon - Nodemon 永远不会启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54412367/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com