mirror of https://github.com/grafana/grafana
ErrorHandling: Error boundary for every container (#18845)
* ErrorHandling: Error boundary for every container * Remvoe custom query editor errorspull/18893/head
parent
b0237c6b7e
commit
490a1d6fc9
@ -1,34 +0,0 @@ |
||||
import React, { Component } from 'react'; |
||||
|
||||
export class ErrorBoundary extends Component<{}, any> { |
||||
constructor(props: {}) { |
||||
super(props); |
||||
this.state = { error: null, errorInfo: null }; |
||||
} |
||||
|
||||
componentDidCatch(error: any, errorInfo: any) { |
||||
// Catch errors in any components below and re-render with error message
|
||||
this.setState({ |
||||
error, |
||||
errorInfo, |
||||
}); |
||||
} |
||||
|
||||
render() { |
||||
if (this.state.errorInfo) { |
||||
// Error path
|
||||
return ( |
||||
<div className="explore-container"> |
||||
<h3>An unexpected error happened.</h3> |
||||
<details style={{ whiteSpace: 'pre-wrap' }}> |
||||
{this.state.error && this.state.error.toString()} |
||||
<br /> |
||||
{this.state.errorInfo.componentStack} |
||||
</details> |
||||
</div> |
||||
); |
||||
} |
||||
// Normally, just render children
|
||||
return this.props.children; |
||||
} |
||||
} |
||||
Loading…
Reference in new issue