react之错误边界

错误边界实质是指什么

实际上是组件

错误边界捕获什么时候的错误

在渲染阶段的错误

错误边界捕获的是谁的错误

捕获的是子组件的错误

错误边界不能捕获什么错误

1、不能捕获异步代码

2、不能捕获事件处理函数

3、不能捕获服务端渲染

4、不能捕获自身抛出的错误

错误边界代码封装

javascript 复制代码
class ErrorBoundary extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      hasError: false,
    };
  }
  getDerivedStateFromError(error) {
    // 更新 state 使下一次渲染能够显示降级后的 UI
    return { hasError: true };
  }
  componentDidCatch(error, errorInfo) {
    // 你同样可以将错误日志上报给服务器
    logErrorToService(error, errorInfo);
  }
  render() {
    if (this.state.hasError) {
      // 你可以自定义降级后的 UI 并渲染
      return <h1>wrong message</h1>;
    }
    return this.props.children;
  }
}

export default ErrorBoundary;

错误边界适合类组件

相关推荐
Easonmax11 分钟前
小白基础入门 React Native 鸿蒙跨平台开发:用基础知识模拟一个——系统设置页面
react native·react.js·harmonyos
贾修行20 分钟前
Kestrel:.NET 的高性能 Web 服务器探秘
服务器·前端·kestrel·.net·net core·web-server·asp.net-core
吃吃喝喝小朋友20 分钟前
HTML DOM
前端·javascript·html
HWL567920 分钟前
HTML中,<video> 和 <source> 标签
前端·javascript·html
球球不吃虾21 分钟前
分享一个简单的交互式塔罗牌抽牌应用
前端·vue
2501_9481201522 分钟前
中职动漫设计与制作专业实训方案研究
前端·人工智能·语言模型·自然语言处理·架构
小小鸟00823 分钟前
前端 RBAC基于角色的权限控制(按钮级别)
前端
学习java的小库里24 分钟前
EasyExcel复杂导出
java·前端
muddjsv25 分钟前
前端开发通用全流程:从需求到上线,步步拆解
前端