Gulp 吞下4块手表任务卡在';启动';

Gulp 吞下4块手表任务卡在';启动';,gulp,Gulp,所以我的是一个非常简单的吞咽文件 const gulp = require("gulp"); const ap = require("gulp-autoprefixer"); function styles() { return gulp .src("./style.css") .pipe(ap("last 2 versions")) .pipe(gulp.dest("./dist")); } function watch() { gulp.watch("./

所以我的是一个非常简单的吞咽文件

const gulp = require("gulp");
const ap = require("gulp-autoprefixer");

function styles() {
  return gulp
    .src("./style.css")
    .pipe(ap("last 2 versions"))
    .pipe(gulp.dest("./dist"));
}

function watch() {
  gulp.watch("./style.css", styles);
}

exports.watch = watch;
exports.styles = styles;

exports.default = watch;
独立运行styles任务确实会生成autoprefixed css

然而,监视任务在
启动“监视”时卡住了…

谁能告诉我怎么了

Gulp CLI版本:2.0.1 本地版:4.0.0 节点:10.15.0
操作系统:Windows 10(WSL)

这可能是个老问题,但我在将旧项目从gulp 3升级到gulp 4时遇到了同样的问题。我有一个应该在服务器启动之前启动的监视程序,但我在启动“监视”时遇到了麻烦。

我可以通过将
done
回调传递给watcher任务并在watch命令后调用它来修复它。这导致服务器在注意到观察者通过后启动,如下所示:

    gulp.task('serve', gulp.series(['task1', 'task2'], function (done) {
        gulp.watch(['src/**/*.js']);
        gulp.watch(['src/**/*.less']);
        done(); // <-- this one
    }));
gulp.task('serve',gulp.series(['task1','task2',],函数(done){
大口喝手表(['src/***/.js']);
大口喝手表(['src/***/.less']);

done();//在您的watch函数中尝试gulp.watch(“./style.css”,gulp.series(styles));它在没有序列的情况下“应该”工作,但似乎不工作。请注意,
watch
任务仅在文件更改时运行。您的意思是
styles
任务在您更改和保存文件时不运行吗?
gulp.series(styles))
不起作用。@DacingCode,当watch任务运行时,Gulp应该告诉我它正在监视glob。相反,它只是停留在“启动‘watch’…”上,这是正常的行为。
styles
任务在启动
watch
任务时不会运行,只有在更改并保存
style.css
文件时才会运行。