我希望看到所有未解决的状态(如果可能的话,所有延迟日志:init,unresolved,resolved / rejected状态)。它有什么机制吗?
类似于:Q.getAllDeferreds()
或Q.getLog()
答案 0 :(得分:2)
假设“q”......
请参阅“使用延迟”一节中的“进度通知”部分和“deferred.notify”部分 - here。
但请注意,它表示(正如人们所预料的那样)“并非所有承诺都会实施进度通知”,因此,除非您的工作模块提供通知,否则在承诺消费方面您无能为力。您可以在.then()
中设置进度处理程序,但除非模块调用deferred.notify()
,否则不会触发。
当然,如果工人模块属于您自己的构造(或以其他方式在您的控制之下),那么您可以对其进行修改以提供通知。
答案 1 :(得分:1)
延迟实施(我是作者)提供未解决的承诺监控和承诺“使用统计”等内容,请检查https://github.com/medikoo/deferred#monitoring-unresolved-promises