ConceptPortal-public/rsconcept/frontend/src/app/ErrorFallback.tsx

23 lines
696 B
TypeScript
Raw Normal View History

2025-01-30 12:56:06 +03:00
import { useNavigate, useRouteError } from 'react-router';
2023-07-25 20:27:29 +03:00
2025-01-28 23:23:42 +03:00
import InfoError from '@/components/info/InfoError';
2025-02-07 10:54:47 +03:00
import { Button } from '@/components/ui/Control';
2023-07-15 17:46:19 +03:00
2025-01-30 12:56:06 +03:00
function ErrorFallback() {
const error = useRouteError();
const router = useNavigate();
function resetErrorBoundary() {
Promise.resolve(router('/')).catch(console.log);
}
2023-07-15 17:46:19 +03:00
return (
<div className='flex flex-col gap-3 my-3 items-center antialiased' role='alert'>
<h1 className='my-2'>Что-то пошло не так!</h1>
2025-01-30 12:56:06 +03:00
<Button onClick={resetErrorBoundary} text='Вернуться на главную' />
2023-12-28 14:04:44 +03:00
<InfoError error={error as Error} />
</div>
);
2023-07-15 17:46:19 +03:00
}
2023-12-28 14:04:44 +03:00
export default ErrorFallback;