React使报错不再白屏

如果代码中出现问题导致报错,通常会使页面报错,导致白屏

javascript 复制代码
function Head() {
  // 此时模拟报错导致的白屏
  return <div>Head --- {content}</div>
}
export default () => {
  return (
    <>
      <div>下面是标题</div>
      <Head />
    </>
  )
}

如上代码只是Head组件中出现了报错,如果只想给出错误信息,但是其他组件仍要正常显示该怎么做呢?

需要下载使用第三方库

javascript 复制代码
npm i react-error-boundary

将可能会报错的组件包裹起来即可

javascript 复制代码
import { ErrorBoundary } from "react-error-boundary"

function Head() {
  // 此时模拟报错导致的白屏
  return <div>Head --- {content}</div>
}
export default () => {
  return (
    <>
      <div>下面是标题</div>
      <ErrorBoundary fallback={<div>出错了!!!</div>}>
        <Head />
      </ErrorBoundary>
    </>
  )
}

此时可以发现,控制台仍有报错,但是不再白屏且报错组件位置出现了自定义的提示信息

相关推荐
wuhen_n几秒前
KeepAlive:组件缓存实现深度解析
前端·javascript·vue.js
前端付豪2 分钟前
Nest 项目小实践之图书展示和搜索
前端·node.js·nestjs
wuhen_n3 分钟前
Vue Router与响应式系统的集成
前端·javascript·vue.js
青青家的小灰灰33 分钟前
金三银四面试官最想听的 React 答案:虚拟 DOM、Hooks 陷阱与大型列表优化
前端·react.js·面试
HelloReader34 分钟前
深入理解 Tauri 架构与应用体积优化实战指南
前端
lemon_yyds34 分钟前
vue 2 升级vue3 : ref 和 v-model 命名为同名
前端·vue.js
codingWhat35 分钟前
小程序里「嵌」H5:一套完整可落地的 WebView 集成方案
前端·uni-app·webview
重庆穿山甲39 分钟前
Java开发者的大模型入门:Spring AI Alibaba组件全攻略(二)
前端·后端
光影少年41 分钟前
在 React 中,什么情况下需要用 useCallback 和 useMemo?它们的区别是什么?
前端·react.js·掘金·金石计划
合天网安实验室42 分钟前
H2O-3反序列化漏洞分析(CVE-2025-6507&CVE-2025-6544)
前端·黑客