react项目中 ResizeObserver loop limit exceeded报错的处理

前几天升级cra到5.0.1,官方添加了有一个react-error-overlay的包,功能就是捕获浏览器的js报错,并给你一个遮罩层提示。。

然后你不得不改很多错误,这些错误很多是不影响使用的,不会导致应用崩溃的错误。

比如axios的报错。。

我第二个解决碰到的就是这个ResizeObserver的报错。

这个报错发生在antd的table组件上。似乎是设置了scroll属性后就会出现这个问题,我网上查了一下ResizeObserver loop limit exceeded 这个报错的原因似乎是因为浏览器在一帧内无法处理所有重绘,所以这个报错是不影响正常使用的,不会引起应用的崩溃。

查了antd的issue,发现这个问题还是一直存在的。

似乎有用户说升到react18.就能解决问题,不过,我现在刚升级了cra,暂时不会升级其他依赖,避免出现很多问题。。。

所以最后我得到的解决方案是,忽略这个报错,

我的看法是,程序只要没崩溃,就不要跟我报错,特别是这个overlay插件,直接挡住整个屏幕,但是报错是组件内产生了,我又没法解决,很影响我正常开发

所以在报错组件里面,添加隐藏这个浮层的样式


:global{
  //antd组件内 ResizeObserver loop limit exceeded报错隐藏
  #webpack-dev-server-client-overlay {
    display: none !important;
  }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容