| Server IP : 195.130.67.5 / Your IP : 216.73.217.154 Web Server : Microsoft-IIS/10.0 System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586 User : IUSR ( 0) PHP Version : 7.4.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Old Sites/ict/wp-content/plugins/really-simple-ssl/settings/src/utils/ |
Upload File : |
import { Component } from '@wordpress/element';
import PropTypes from 'prop-types';
class ErrorBoundary extends Component {
constructor(props) {
super(props);
this.state = { hasError: false, error: null, errorInfo: null };
this.resetError = this.resetError.bind(this);
}
static getDerivedStateFromError(error) {
return { hasError: true };
}
componentDidCatch(error, errorInfo) {
this.setState({ error, errorInfo });
// You can also log the error to an error reporting service
console.log('ErrorBoundary', error, errorInfo);
}
resetError() {
this.setState({ hasError: false, error: null, errorInfo: null });
}
render() {
if (this.state.hasError) {
return (
<div>
<h1>Something went wrong.</h1>
{/* You can render any custom fallback UI */}
<p>{this.props.fallback}</p>
<button onClick={this.resetError}>Try Again</button>
</div>
);
}
return this.props.children;
}
}
ErrorBoundary.propTypes = {
children: PropTypes.node,
fallback: PropTypes.node,
};
export default ErrorBoundary;