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>
    </>
  )
}

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

相关推荐
墨渊君31 分钟前
“蒙”出花样!用 CSS Mask 实现丝滑视觉魔法
前端·css
huabuyu1 小时前
基于 React + MarkdownIt 的 Markdown 渲染器实践:支持地图标签和长按复制
前端
用户7678797737321 小时前
后端转全栈之Next.js SEO优化
react.js·next.js
芦苇Z1 小时前
HTML <a> 标签的 rel 属性全解析:安全、隐私与 SEO 最佳实践
前端·html
在这儿不行1 小时前
Android 15边到边模式
前端
源猿人1 小时前
企业级文件浏览系统的Vue实现:架构设计与最佳实践
前端·javascript·数据可视化
红红大虾1 小时前
Defold引擎中关于CollectionProxy的使用
前端·游戏开发
最后一个农民工1 小时前
vue3实现仿豆包模版式智能输入框
前端·vue.js
xw52 小时前
uni-app中v-if使用”异常”
前端·uni-app