Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про React Router: loader, error, api

Чем полезен useRouteError, и в каких ситуациях его использовать?

Этот вопрос проверяет знание механизма обработки ошибок в маршрутах

Короткий ответ

useRouteError позволяет получить ошибку, возникшую в loader или action, и отобразить её пользователю. Он используется в errorElement маршрутов для показа кастомных страниц ошибок.

Длинный ответ

Как работает useRouteError:

Ошибка, выброшенная в loader или action, автоматически передается в errorElement маршрута.

В errorElement хук useRouteError предоставляет объект ошибки.

Пример использования:

Настройте маршрут с обработкой ошибок:

const router = createBrowserRouter([
	{
		path: "/",
		element: <Home />,
		loader: async () => {
			throw new Error("Ошибка загрузки данных");
		},
		errorElement: <ErrorPage />,
	},
]);

Создайте компонент для обработки ошибок:

import { useRouteError } from 'react-router-dom';
const ErrorPage = () => {
	const error = useRouteError();
	return (
		<div>
			<h1>Ошибка!</h1>
			<p>{error.message}</p>
		</div>
	);
};

Обработка ошибок действий:

Аналогично loader, ошибки из action также обрабатываются через errorElement.

Преимущества:

  • Централизованная обработка ошибок.

  • Возможность предоставлять пользователю понятные сообщения об ошибках.

Итог: useRouteError улучшает пользовательский опыт, позволяя показать детальную информацию при ошибках.

Уровень

  • Рейтинг:

    2

  • Сложность:

    8

Навыки

  • React Router

    React Router

Ключевые слова

#loader

#error

#api

Подпишись на React Developer в телеграм