fs.FSWatcher
2024年10月14日
成功调用 fs.watch() 方法将返回新的 fs.FSWatcher 对象。每当修改指定的被监视文件时,所有 fs.FSWatcher 对象都会触发 change 事件。
fs.FsWatcher 事件
-
change 事件
-
触发: 当监视的目录或文件中的某些内容发生更改时触发。
-
语法:
watch(filename,{……},(eventType,filename)=>{
})- eventType: string 发生的变更事件的类型
- filename: string|buffer 更改的文件名(如果相关/可用)
-
-
close 事件
- 触发: 当监视器停止监视变化时触发。关闭的 fs.FSWatcher 对象在事件句柄中不再可用。
-
error 事件
- 触发: 在监视文件时发生错误时触发。 出错的 fs.FSWatcher 对象在事件句柄中不再可用。
fs.FsWatcher 属性
fs.FsWatcher 方法
-
watcher.close()
- 作用: 停止监视给定 fs.FSWatcher 上的更改。 一旦停止,fs.FSWatcher 对象就不再可用。
-
watcher.ref()
- 作用: 调用时,只要 fs.FSWatcher 处于活动状态,就请求 Node.js 事件循环不退出。 多次调用 watcher.ref() 将不起作用。默认情况下,所有 fs.FSWatcher 对象都被“引用”,这使得通常不需要调用 watcher.ref() 除非之前已经调用过 watcher.unref()。
- 返回值: fs.FSWatcher
-
watcher.unref()
- 作用: 调用时,活动的 fs.FSWatcher 对象不需要 Node.js 事件循环保持活动状态。 如果没有其他活动保持事件循环运行,则进程可能会在调用 fs.FSWatcher 对象的回调之前退出。 多次调用 watcher.unref() 将不起作用。
- 返回值: fs.FSWatcher