Gulp 4、Tasks在调用watch之前不执行
Gulp 4, Tasks don't execute before calling watch
我正在使用 Gulp 4 将我的代码从 TypeScript 编译为 JavaScript 并构建和提供应用程序。
我遇到了一个我无法解决的问题。
我想 运行 在更改某些文件之前执行构建、复制-html 和复制-css 任务。
根据 Gulp 文档,我只需要提供一个将 ignoreInitial 设置为 false 的配置对象,但它不起作用。
我尝试在初始化 browserSync 之前调用这三个任务,但它对我也不起作用。
gulp.task("serve", function() {
// TODO Make a build before first serve
browserSync.init({
server: {
baseDir: "./dist/"
}
});
gulp
.watch(["src/**/*.ts", "src/**/*.html", "src/**/*.css"], {
ignoreInitial: false
})
.on(
"change",
gulp.series(
gulp.parallel("copy-html", "copy-css"),
build,
browserSync.reload
)
);
});
不要在返回的 chokidar
界面上调用 .on()
,而是将您的任务添加到 watch 命令。
gulp
.watch(
["src/**/*.ts", "src/**/*.html", "src/**/*.css"],
{ ignoreInitial: false },
gulp.series(
gulp.parallel("copy-html", "copy-css"),
build,
browserSync.reload
)
)
);
我正在使用 Gulp 4 将我的代码从 TypeScript 编译为 JavaScript 并构建和提供应用程序。
我遇到了一个我无法解决的问题。
我想 运行 在更改某些文件之前执行构建、复制-html 和复制-css 任务。
根据 Gulp 文档,我只需要提供一个将 ignoreInitial 设置为 false 的配置对象,但它不起作用。
我尝试在初始化 browserSync 之前调用这三个任务,但它对我也不起作用。
gulp.task("serve", function() {
// TODO Make a build before first serve
browserSync.init({
server: {
baseDir: "./dist/"
}
});
gulp
.watch(["src/**/*.ts", "src/**/*.html", "src/**/*.css"], {
ignoreInitial: false
})
.on(
"change",
gulp.series(
gulp.parallel("copy-html", "copy-css"),
build,
browserSync.reload
)
);
});
不要在返回的 chokidar
界面上调用 .on()
,而是将您的任务添加到 watch 命令。
gulp
.watch(
["src/**/*.ts", "src/**/*.html", "src/**/*.css"],
{ ignoreInitial: false },
gulp.series(
gulp.parallel("copy-html", "copy-css"),
build,
browserSync.reload
)
)
);