有没有办法,我可以看到哪些文件是由吞咽手表处理?
我有这个吞咽任务:
var abc = { src: [ 'app/**/abc.html', 'app/**/def.html' ], }; gulp.task('watchHTMLs', function () { gulp.watch(abc.src, function (file) { return gulp.src(file.path, { base: process.cwd() }) .pipe(rename({ basename: 'base' })) .pipe(gulp.dest('./')); }); });
有没有什么方法可以从我运行gulp脚本的地方看到输出结果,从而显示哪个文件被更改?
像这样的东西:
> cmd.exe /c gulp -b "C:\H\user\user" --color --gulpfile "C:\H\user\user\Gulpfile.js" watchHTMLs [11:37:29] Using gulpfile C:\H\user\user\Gulpfile.js [11:37:29] Starting 'watchHTMLs'... [11:37:29] Finished 'watchHTMLs' after 60 ms
find文件/app/xxx/abc.htmlfind文件/app/yyy/abc.htmlfind文件/app/xxx/def.html
看看gulp-print :
gulp.watch(abc.src, function (file) { return gulp.src(file.path, { base: process.cwd() }) .pipe(print(function (file) { return "Found file "+file; }) .pipe(rename({ basename: 'base' })) .pipe(gulp.dest('./')); });
gulp.watch
返回一个EventEmitter,所以你可以简单地听取更改:
var watcher = gulp.watch(abc.src, 'task'); watcher.on('change', event => { console.log(event.path); });
或者,如果你想遵循你的方法,我build议使用gulp-debug
:
var debug = require('gulp-debug'); ... gulp.watch(abc.src, function (file) { return gulp.src(file.path, { base: process.cwd() }) .pipe(debug()) .pipe(rename({ basename: 'base' })) .pipe(gulp.dest('./')); });