Проверяет понимание механизма рендеринга React и способов инициировать обновление компонента.
В React компонент перерендеривается при изменении state или props. Если нужно принудительно вызвать ререндер, можно изменить состояние, использовать useReducer, изменить key компонента или в классовых компонентах вызвать forceUpdate. Обычно прямой принудительный ререндер считается нежелательной практикой.
В React перерендер запускается при изменении состояния или входных данных. Иногда требуется инициировать его вручную.
Изменение state
Самый корректный способ — изменить состояние.
setTick(t => t + 1);
Использование useReducer
Подходит, если нужно просто триггерить обновление.
const [, forceUpdate] = useReducer(x => x + 1, 0);
Изменение key
React пересоздаст компонент.
<Component key={id} />
forceUpdate (классовые компоненты)
this.forceUpdate();
обновление данных, не связанных напрямую со state
интеграция со сторонними библиотеками
Наиболее корректный способ вызвать ререндер — изменить state, а прямые методы используются редко и в особых случаях.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию