React拓展8-ErrorBoundary错误边界

理解:

  • 用于解决子组件出现问题导致整个程序出问题。

  • 错误边界:用来捕获后代组件错误,渲染出备用页面

特点:

只能捕获后代组件生命周期产生的错误,不能捕获自己组件产生的错误和其他组件在合成事件、定时器中产生的错误

使用方式:

getDerivedStateFromError配合componentDidCatch

// 生命周期函数,一旦后台组件报错,就会触发
static getDerivedStateFromError(error) {
    
    
    console.log(error);
    // 在render之前触发
    // 返回新的state
    return {
    
    
        hasError: true,
    };
}

componentDidCatch(error, info) {
    
    
    // 统计页面的错误。发送请求发送到后台去
    console.log(error, info);
}

正常渲染子组件:

子组件出现错误,渲染备用页面:

猜你喜欢

转载自blog.csdn.net/m0_55990909/article/details/124614566
今日推荐