Avatar / frontend /src /components /ErrorBoundary.jsx
DataSage12's picture
Initial commit - HOLOKIA-AVATAR v2.2
de63014
import React, { Component } from 'react';
export default class ErrorBoundary extends Component {
state = { hasError: false, error: null };
static getDerivedStateFromError(error) {
return { hasError: true, error };
}
componentDidCatch(error, errorInfo) {
console.error("Erreur dans le composant:", error, errorInfo);
if (this.props.onError) {
this.props.onError(error);
}
}
render() {
if (this.state.hasError) {
return this.props.fallback || (
<div className="p-4 bg-red-100 text-red-700">
<h3 className="font-bold">Une erreur est survenue</h3>
<p>{this.state.error.message}</p>
</div>
);
}
return this.props.children;
}
}