DOM и React Senior Паттерны компонентов обновлено
Граница ошибок
Условие
Класс-компонент ErrorBoundary: если потомок бросает при рендере, показать <span>сломалось</span> вместо падения всего дерева.
Что проверяют тесты
пропускает нормальных потомков
ловит падение потомка
Как подойти
Единственное, что до сих пор требует класса. Граница ловит ошибки рендера, методов жизненного цикла и конструкторов потомков - но не ошибки в обработчиках событий, асинхронном коде и SSR. Их ловят обычным try/catch. Гранулярность важна: одна граница на всё приложение означает белый экран при любой ошибке.
Подсказки: 2
- Границу ошибок можно написать только классом - хука для этого нет.
- getDerivedStateFromError переводит состояние, componentDidCatch логирует.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.