Parse platform 是否有处理运行时错误的javascript promise库?

Parse platform 是否有处理运行时错误的javascript promise库?,parse-platform,promise,q,bluebird,Parse Platform,Promise,Q,Bluebird,到目前为止,我已经尝试比较了Parse.Promise、Q和Bluebird,但是我还没有得到错误或捕获块来处理/捕获异步运行时错误 如果您认为上面提到的库之一可以处理/捕获异步运行时错误,并且怀疑我可能没有正确编写示例代码,请随时指出任何错误: 否则,我正在寻找其他promise库或框架的建议以供探索。对于一个库来说,根本不可能处理超出其控制范围的错误。承诺库是抛出安全的唯一原因是承诺使用返回值来吸收其他承诺 如果您的所有代码都返回承诺而不是回调,那么所有A+承诺库(在您的示例中是Q和Blue

到目前为止,我已经尝试比较了
Parse.Promise
Q
Bluebird
,但是我还没有得到
错误
捕获
块来处理/捕获异步运行时错误

如果您认为上面提到的库之一可以处理/捕获异步运行时错误,并且怀疑我可能没有正确编写示例代码,请随时指出任何错误:


否则,我正在寻找其他promise库或框架的建议以供探索。

对于一个库来说,根本不可能处理超出其控制范围的错误。承诺库是抛出安全的唯一原因是承诺使用返回值来吸收其他承诺

如果您的所有代码都返回承诺而不是回调,那么所有A+承诺库(在您的示例中是Q和Bluebird,但不是Parse.promise)都将捕获运行时错误,Bluebird甚至会自动报告这些错误,而无需
.catch

域正在被弃用,在实践中没有很好的工作,并且没有节点范围的解决方案。你唯一的选择就是坚持应用程序范围内的承诺。您必须在未捕获的异常情况下终止并重新启动服务器,因为节点代码中抛出这些异常的部分在抛出后不会很好地清理(这就是为什么域一开始就被弃用的部分原因)

因此:

  • 如果在应用程序范围内使用承诺,则承诺对于运行时错误是安全的
  • 如果您必须运行可能被抛出的不可信代码,考虑使用VM模块在VM中运行它。
  • 有时会出现节点错误,使您别无选择,只能重新启动服务器
  • 在尽可能低的级别进行Promisify,以避免promisified函数抛出

.

一个库根本不可能处理超出其控制范围的错误。承诺库是抛出安全的唯一原因是承诺使用返回值来吸收其他承诺

如果您的所有代码都返回承诺而不是回调,那么所有A+承诺库(在您的示例中是Q和Bluebird,但不是Parse.promise)都将捕获运行时错误,Bluebird甚至会自动报告这些错误,而无需
.catch

域正在被弃用,在实践中没有很好的工作,并且没有节点范围的解决方案。你唯一的选择就是坚持应用程序范围内的承诺。您必须在未捕获的异常情况下终止并重新启动服务器,因为节点代码中抛出这些异常的部分在抛出后不会很好地清理(这就是为什么域一开始就被弃用的部分原因)

因此:

  • 如果在应用程序范围内使用承诺,则承诺对于运行时错误是安全的
  • 如果您必须运行可能被抛出的不可信代码,考虑使用VM模块在VM中运行它。
  • 有时会出现节点错误,使您别无选择,只能重新启动服务器
  • 在尽可能低的级别进行Promisify,以避免promisified函数抛出

.

一个库根本不可能处理超出其控制范围的错误。承诺库是抛出安全的唯一原因是承诺使用返回值来吸收其他承诺

如果您的所有代码都返回承诺而不是回调,那么所有A+承诺库(在您的示例中是Q和Bluebird,但不是Parse.promise)都将捕获运行时错误,Bluebird甚至会自动报告这些错误,而无需
.catch

域正在被弃用,在实践中没有很好的工作,并且没有节点范围的解决方案。你唯一的选择就是坚持应用程序范围内的承诺。您必须在未捕获的异常情况下终止并重新启动服务器,因为节点代码中抛出这些异常的部分在抛出后不会很好地清理(这就是为什么域一开始就被弃用的部分原因)

因此:

  • 如果在应用程序范围内使用承诺,则承诺对于运行时错误是安全的
  • 如果您必须运行可能被抛出的不可信代码,考虑使用VM模块在VM中运行它。
  • 有时会出现节点错误,使您别无选择,只能重新启动服务器
  • 在尽可能低的级别进行Promisify,以避免promisified函数抛出

.

一个库根本不可能处理超出其控制范围的错误。承诺库是抛出安全的唯一原因是承诺使用返回值来吸收其他承诺

如果您的所有代码都返回承诺而不是回调,那么所有A+承诺库(在您的示例中是Q和Bluebird,但不是Parse.promise)都将捕获运行时错误,Bluebird甚至会自动报告这些错误,而无需
.catch

域正在被弃用,在实践中没有很好的工作,并且没有节点范围的解决方案。你唯一的选择就是坚持应用程序范围内的承诺。您必须在未捕获的异常情况下终止并重新启动服务器,因为节点代码中抛出这些异常的部分在抛出后不会很好地清理(这就是为什么域一开始就被弃用的部分原因)

因此:

  • 如果在应用程序范围内使用承诺,则承诺对于运行时错误是安全的
  • 如果您必须运行可能被抛出的不可信代码,考虑使用VM模块在VM中运行它。
  • 有时会出现节点错误,使您别无选择,只能重新启动服务器
  • 在尽可能低的级别进行Promisify,以避免promisified函数抛出

.

请在此处发布代码以及您希望捕获的错误。这两个代码的副本非常接近,但不是完全重复。请在此处发布代码以及您希望捕获的错误。这两个代码的副本非常接近,但不是完全重复。请在此处发布代码