我对使用 Electron 还很陌生,但我遇到的问题似乎与setInterval()函数有关。我正在导入一个名为exiftool-vendored的库,而该库又依赖于一个名为batch-cluster的库。

当我导入批处理群集时,它会崩溃,因为它希望从setInterval()类的Timeout返回一个返回值,该返回值是 Node 实现返回的内容。相反,它返回的是chrome返回的整数。有关两种不同的实现,请参见此处的文档:

  • https://nodejs.org/api/timers.html
  • https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setInterval

  • 所以我对此有一些疑问
  • 这是我想的问题吗?
  • 我将如何解决?我正在考虑 fork batch-cluster库,是否有不需要此方法的更好解决方案?
  • 这在 Electron 中经常发生吗?在Node和Chrome中是否定义了功能相同但功能不同的功能?

  • 感谢您抽出宝贵的时间来查看我的问题!

    乔希

    最佳答案

    在Electron主过程中执行长时间运行的任务不是一个好主意,它可能会导致很多问题。

    submitted a PRbatch-cluster,当它变成exiftool-vendored时应该解决该问题。

    关于node.js - chrome和node之间的 Electron setInterval实现差异,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48961238/

    10-15 13:20