Javascript componentdidcatch捕捉到什么样的错误
我将我的主要组件包装如下:Javascript componentdidcatch捕捉到什么样的错误,javascript,reactjs,Javascript,Reactjs,我将我的主要组件包装如下: class App extends React.Component { render() { return ( <div> <ErrorBoundary> <Home /> </ErrorBoundary> </div> ); } } 类应用程序扩展了React.Component{ render(){ 返回
class App extends React.Component {
render() {
return (
<div>
<ErrorBoundary>
<Home />
</ErrorBoundary>
</div>
);
}
}
类应用程序扩展了React.Component{
render(){
返回(
);
}
}
只是想知道什么样的错误componentDidCatch
catch?不捕获编译错误,当我在子组件中从
this.props.users.people.length
到this.props.users.usersllength
它应该显示我加载微调器的时间(在我的子组件中有一个三元运算符,不确定这是否会影响它)
只是想知道它捕捉到了什么样的错误,以及我如何伪造浏览器来查看它的工作情况
错误边界是React组件,它捕获子组件树中任意位置的JavaScript错误,记录这些错误,并显示回退UI,而不是崩溃的组件树。错误边界捕获渲染期间、生命周期方法中以及它们下面整个树的构造函数中的错误
请确保检查子组件的错误,并确保这些错误是在呈现过程中引起的,而不是在事件处理程序或其他异步代码中引起的。对于该代码,您仍然可以自由使用常规的try/catch
请仔细阅读官方网站上关于
错误边界是React组件,它捕获子组件树中任意位置的JavaScript错误,记录这些错误,并显示回退UI,而不是崩溃的组件树
因此,它的工作原理基本上与javascript的.catch()
类似,只是它在呈现组件时捕获错误,并且它无法捕获自身内部的错误
看看他们的演示
错误边界不会捕获以下错误:事件处理程序、异步代码、服务器端呈现、错误边界本身(而不是其子项)中抛出的错误…更多信息