有没有办法在Reactjs中全局捕获未处理的Promise异常?

时间:2018-07-11 00:02:19

标签: javascript reactjs exception-handling promise react-redux

我尝试使用componentDidCatch,但是该钩子仅用于呈现组件中的实际错误。承诺可以发生在组件层次结构之一中,但是直到稍后才会抛出。

我还在我的函数周围包裹了一个tryCatch,该函数执行应用程序的初始渲染,但是也无法捕获异常。(出于我的考虑)

1 个答案:

答案 0 :(得分:3)

您可以将onunhandledrejection事件附加到最上面的组件componentDidDount方法。

class TopComponent extends React.Component {
 componentDidMount() {
    window.onunhandledrejection = (err) => {
      // handle error
    }
 }

}