Обзор методов жизненного цикла React
Методы жизненного цикла React — это специальные функции, которые выполняются на определённых этапах существования компонента. Доступные методы зависят от твоей версии React, так как значительные изменения произошли в React 16.3.
Методы жизненного цикла до React 16.3
- componentWillMount: Выполняется перед первоначальным рендерингом; используется для конфигурации на уровне приложения
- componentDidMount: Выполняется после первоначального рендеринга; идеален для AJAX-запросов, обновления DOM и установки слушателей событий
- componentWillReceiveProps: Выполняется при обновлении props; запускает переходы состояния
- shouldComponentUpdate: Определяет, должен ли компонент перерендериться; по умолчанию возвращает
true. Верни false, чтобы предотвратить ненужные рендеринги и улучшить производительность
- componentWillUpdate: Выполняется перед перерендерингом, когда
shouldComponentUpdate() возвращает true
- componentDidUpdate: Выполняется после перерендеринга; используется для обновления DOM в ответ на изменения props или state
- componentWillUnmount: Выполняется перед удалением компонента; используется для отмены сетевых запросов и удаления слушателей событий
Методы жизненного цикла React 16.3+
- getDerivedStateFromProps: Вызывается перед каждым вызовом
render(); используется в редких случаях, требующих производного состояния
- componentDidMount: Выполняется после первоначального рендеринга; идеален для AJAX-запросов, обновления DOM и установки слушателей событий
- shouldComponentUpdate: Определяет, должен ли компонент перерендериться; по умолчанию возвращает
true. Верни false, чтобы предотвратить ненужные рендеринги
- getSnapshotBeforeUpdate: Выполняется непосредственно перед применением изменений DOM; захватывает информацию вроде позиции прокрутки. Возвращает значение, передаваемое в
componentDidUpdate()
- componentDidUpdate: Выполняется после перерендеринга; используется для обновления DOM в ответ на изменения. Не будет вызван, если
shouldComponentUpdate() возвращает false
- componentWillUnmount: Выполняется перед удалением компонента; используется для отмены сетевых запросов и очистки слушателей событий