繁体   English   中英

Aurelia定制gulp观察者

[英]Aurelia custom gulp watcher

试图让自定义观察者工作:

var gulp = require('gulp'),
    shell = require('gulp-shell');

gulp.task('run-au', shell.task(['au build']));

gulp.task('build', gulp.series('run-au', () => {
   return gulp.src('./wwwroot/**/*.*')
               .pipe(gulp.dest('../Something.Api/wwwroot'));
}));

gulp.task('watch', () => {
    gulp.watch('./src/**/*.*').on('change', gulp.series('build'));
});

非常简单,当我在src更改某些内容时它会起作用,但是当它检测到更改时,它会进入循环构建周期,它将继续运行build

附加

我看到environment.js似乎正在更新,这可能会影响手表,从而创建循环构建,但是甚至更改为:

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

似乎没有改变结果

在文档中,它指出:

gulp.watch(globs [,opts] [,fn])

OPTS

类型: Object

queue (布尔值,默认值: true )。 如果fn已经在运行,文件更改是否应该对fn执行进行排队。 对于长期运行的fn很有用。

所以我补充说:

gulp.task('watch', () => {
    gulp.watch(['./src/**/*.*', '!./src/env*.*'], {queue: false}, gulp.series('build'));
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM