node.js - fs watch方法的区别

标签 node.js watch

node.js文件系统监视方法有什么区别:

  • watch(filename,[, options],(filename) => {} ) (node-watch 包)
  • fs.watch(文件名[,选项][,监听器])
  • fs.watchFile(文件名[,选项],监听器)

(添加更多(如果有))

最佳答案

我正在寻找有关这个问题的信息,并发现了 this post.

- 博客文章简而言之:

fs.watch()

  • 是较新的 API,推荐使用。
  • 使用操作系统支持的原生观看功能,因此不会浪费CPU等待。
  • 不支持所有平台,例如 AIX 和 Cygwin。

fs.watchFile()

  • 是旧 API,不推荐。
  • 定期调用 stat(),因此即使没有任何变化也会使用 CPU。
  • 可在任何平台上运行。

- 不在博客文章中:

node-watch()

我自己没有使用过node-watch,但是,通过查看它,我可以看到它扩展了fs.watch()并添加了递归功能。 fs.watch() 允许您监视目录的更改,但要监视下面的所有目录将需要单独的调用。如果我不得不猜测,(我没有尝试过)这些可能是相同的:

fs.watch(./project)

fs.watch(./project/assets)

fs.watch(./project/lib)

或者

node-watch(./project, { recursive: true })

关于node.js - fs watch方法的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44738837/

相关文章:

node.js - Node : Actual native substitute for "through2" for intervention to steams in 2021

javascript - 当我尝试在范围内运行时,为什么 getElementsByTagName 为 null。$watch

Angular 绑定(bind)到函数结果

node.js - 使用 POST 请求传递 JSON 数据后,无法从 Postman 获取响应响应

node.js - 使用 Node.js 从 Kafka 到 Elasticsearch 消费

javascript - 为什么输出屏幕中不显示端口号?

javascript - 如何使用 node.js 通过 https 实现 mongodb 连接?

javascript - VueJS : watching two properties

file - webpack 可以报告哪个文件在 watch 模式下触发了编译吗?

swift - 缺少自动布局的 Xcode 11 引脚菜单(在 Main.storyboard 下) - 仅在此项目上