它处理什么样的错误,并且在现实世界中有任何情况吗?
我阅读了文档,但它没有给出一个很好的例子。
而且文档还提到它可以处理UI错误,但是可以在开发时解决UI错误,因此我们为什么需要“错误边界”。
错误边界类似于React组件的try-catch
块。它们使您可以捕获并处理优雅地响应组件中的意外错误,例如,向用户显示错误消息。
这些错误(如果未解决,将导致您的应用崩溃。错误边界使您能够捕获这些错误并以防止应用崩溃的方式处理它们,而是向用户提供用户友好的消息,指示出问题了。
请注意,错误边界不会处理以下错误:
这里是一个很好的article,解释了错误边界
但是UI错误可以在开发时解决
[UI错误在开发时无法解决,尽管像Flow
和Typescript
这样的键入确实有很大帮助,但是,数据服务器通常可能会出现运行时错误。
用于捕获运行时错误]的错误边界和显示友好的UI。
请参见Compile time vs Run time errors。
[
ErrorBoundary
是实现getDerivedStateFromError
和getDerivedStateFromError
的类组件,以便在后退UI上添加其他渲染。
当前,它可以只能实现
与一个类组件,通常是应用程序中唯一的类组件,其余的是带有钩子的功能组件。在现实的用例中,您将应用程序包装为某些
componentDidCatch
组件并呈现所需的UI。
<ErrorBoundary/>