如果不活动,如何超时gulp-watch

时间:2015-03-25 22:55:50

标签: node.js gulp gulp-watch

我有一个gulp watch任务,如果在过去一小时内没有任何变化,我希望它自动停止。这可能吗?

1 个答案:

答案 0 :(得分:3)

使用超时:

gulp.task('watcher', function() {
    var watcher = gulp.watch('./app/*.js', ['jshint']);
    var timeout = setTimeout(watcher.end, 60*60*1000);

    watcher.on('change', function() {
        clearTimeout(timeout);
        timeout = setTimeout(watcher.end, 60*60*1000);
    });
});

每次Glob中的某些内容发生变化时,您都会终止超时并重新开始。否则你就会结束你的观察者。