fs.unwatchFile(filename[, listener])
不传第二个参数,移除目标文件的所有监听器,从而停止监视 filename。
如果指定了 listener,则仅移除目标文件的此特定监听器
例:只移除被监听文件的某一个监听器
const fs = require('fs')
const listener1 = (curr, prev) => {
console.log('listener1被触发')
}
const listener2 = (curr, prev) => {
console.log('listener2被触发')
}
fs.watchFile('./a.text', listener1)
fs.watchFile('./a.text', listener2)
//只移除被监听文件的某一个监听器
setTimeout(() => {
fs.unwatchFile('./a.text', listener1)
}, 10000)
执行node index.js,立刻修改a.text内容保存,10s后再修改a.text内容保存,因为10s后会移除监听器listener1

例:移除被监听文件的所有监听器
const fs = require('fs')
const listener1 = (curr, prev) => {
console.log('listener1被触发')
}
const listener2 = (curr, prev) => {
console.log('listener2被触发')
}
fs.watchFile('./a.text', listener1)
fs.watchFile('./a.text', listener2)
//只移除被监听文件的某一个监听器
setTimeout(() => {
fs.unwatchFile('./a.text')
}, 10000)
执行node index.js,立刻修改a.text内容保存,10s后会停止监听a.text

网友评论