我正在使用 gulp-watch 插件,并希望将源中新添加的文件复制到目标目的地。
watch({glob:SOURCE + '/**/*.js'})
.pipe(plumber())
.pipe(gulp.dest(DESTINATION));
每次将新文件添加到 SOURCE 目录时,我都会收到“总线错误:10”,并且手表会中断而不会复制新添加的文件。
我正在使用 gulp-watch 插件,并希望将源中新添加的文件复制到目标目的地。
watch({glob:SOURCE + '/**/*.js'})
.pipe(plumber())
.pipe(gulp.dest(DESTINATION));
每次将新文件添加到 SOURCE 目录时,我都会收到“总线错误:10”,并且手表会中断而不会复制新添加的文件。
请您使用此语法在 gulp 中添加新文件
gulp.task('task_name', function() {
return watch({
glob: SOURCE
}, function(files) {
return files.pipe(plumber()).pipe(jade()).pipe(gulp.dest(DESTINATION));
});
});
gulp.watch
不会创建源流,它会在文件更改时触发并调用任务。
尝试在监视任务旁边创建一个简单的移动任务,然后从监视触发移动。像这样的东西:
gulp.task('move-js', function() {
gulp.src('./js-src/**/*.js')
.pipe(gulp.dest('./js-dest'));
});
gulp.task('watch-js', ['move-js'], function() {
gulp.watch('./js-src/**/*.js', ['move-js']);
});
请注意,该watch-js
任务具有move-js
依赖关系,每当调用监视时,这将调用移动任务,而不是等待监视目录中的某些内容发生更改。
为了清楚起见,我重复了 glob,但这可能应该存储在一个变量中。