假定我们创建了chokidar实例,但是随后应注意的文件选择已更改。如果我不想创建新变量,仅将具有新文件选择的新chokidar watcher分配给同一变量就足够了吗?当然,在下面的代码中,我希望不再filesSelection1
被监视。
let filesSelection1 = 'test/files/selection/1/**.*';
let filesSelection2 = 'test/files/selection/2/**.*';
let stylesWatcher = chokidar.watch(filesSelection1);
// is it correct?
stylesWatcher = chokidar.watch(filesSelection2);
答案 0 :(得分:0)
我不了解 chokidar (以及NodeJS流)的详细实现,但是经过一些实验,我了解到以下代码中的stylesWatcher = null
不会终止监视:
let stylesWatcher = chokidar.watch(filesSelection1);
stylesWatcher = null;
如果您要更新 chokidar 观看者而不进行观看将终止,则以下代码通过了测试:
let stylesWatcher = chokidar.watch(filesSelection1);
let bufferedOldWatcher = stylesWatcher;
stylesWatcher = chokidar.watch(filesSelection2);
bufferedOldWatcher.close(); // now we can close watching on old instance