【问题标题】:Gulp hangs after executing tasks执行任务后 Gulp 挂起
【发布时间】:2021-12-18 13:56:26
【问题描述】:

我正在弄清楚 gulp 是如何工作的;看起来 gulp 任务正在执行,但随后挂起。

环境:

节点版本v14.17.0.

一饮而尽:

CLI 版本:2.3.0 本地版本:4.0.2


const babel = require("gulp-babel");

task("js",()=>{
    return src("src/*.js").pipe(babel()).pipe(dest("dist/js"));
})
task("moveHTML",()=>{
    return src("src/*.html").pipe(dest("dist"));
});
task("watch",()=>{
    watch("src/*.js",series("js"));
});
task("default",series('moveHTML','js','watch'));

这里没有错误,但是执行挂起。以下是节点终端消息:


[10:30:29] Starting 'default'...

[10:30:29] Starting 'moveHTML'...

[10:30:29] Finished 'moveHTML' after 85 ms

[10:30:29] Starting 'js'...

[10:30:32] Finished 'js' after 3.22 s

[10:30:32] Starting 'watch'... 

【问题讨论】:

  • 我认为您在第一个任务之后缺少一个分号。 (不确定这会解决问题。
  • 另外,您希望在watch 任务之后会发生什么?它只会在您修改文件时显示更改。
  • 它的工作原理感谢@Dementic 的好评

标签: javascript node.js gulp


【解决方案1】:

该进程持续存在,因为您正在调用 gulp.watch,它返回一个 chokidar 的实例,并且默认情况下保持节点进程运行。

如果要停止节点进程,请使用persistent 选项并将其设置为false

watch("src/*.js", { persistent: false }, series("js"));

但是,gulp 文档建议不要这样做。

【讨论】:

    猜你喜欢
    • 2014-09-21
    • 1970-01-01
    • 2015-10-18
    • 2015-04-25
    • 2016-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-09
    相关资源
    最近更新 更多