Получить доступ

Границы ошибок

Основа

Как не дать ошибке в одном компоненте уронить всё приложение.

Ошибка при рендере любого компонента без обработки размонтирует всё приложение — пользователь видит белый экран. Граница ошибок перехватывает ошибку в своём поддереве и показывает запасной интерфейс.

import { ErrorBoundary } from "react-error-boundary";

<ErrorBoundary fallback={<p>Не удалось загрузить отчёт</p>}>
  <Report />
</ErrorBoundary>

Что важно знать

  • Встроенные границы — только классовые компоненты (componentDidCatch, getDerivedStateFromError); на практике берут библиотеку react-error-boundary.
  • Не ловят ошибки в обработчиках событий и асинхронном коде — там обычный try/catch.
  • Ставят на уровне страниц и крупных виджетов, плюс отправка ошибки в мониторинг (Sentry).

Документация

← Вся карта «React»

Закрытая бета

Знать тему — половина дела

На живом собеседовании sotto слышит вопрос интервьюера и показывает короткий ответ и план. Оставьте контакт — пришлём доступ и промокод.

  • Промокод на 2 часа — сверх пробных 30 минут
  • Программа для Windows — скачать сразу, войти — через Яндекс ID или VK ID
  • Прямая связь с разработчиком: что улучшить — сделаем