Red*_*ter 1 javascript promise
我正在尝试使用,rejectionhandled
但无法启动。下面的代码应该基于我能找到的所有文档工作。我注册了一个监听器,rejectionhandled
然后拒绝一个承诺并抓住它。在启用了“测试”标志的 chrome 和 firefox 中,记录但未“拒绝”。我错过了什么?
window.addEventListener("rejectionhandled", e => console.log("rejected"), false);
new Promise((resolve, reject) => setTimeout(reject, 1000)).catch(err => console.error("testing"))
Run Code Online (Sandbox Code Playgroud)
该rejectionhandled
事件不会在每次处理的拒绝时触发,它只会在最初未处理的拒绝(导致unhandledrejection
events)时触发,但随后确实附加了一个处理程序。
这些事件是从ECMAScript 规范中实现定义HostPromiseRejectionTracker
的 HTML 实现中触发的,其注释说
HostPromiseRejectionTracker 在两种情况下被调用:
- 当一个承诺在没有任何处理程序的情况下被拒绝时,它的操作参数被设置为“拒绝”。
- 当一个处理程序第一次被添加到一个被拒绝的承诺中时,它的操作参数被设置为“handle”。
归档时间: |
|
查看次数: |
242 次 |
最近记录: |