Жизненный цикл компонента
Монтаж
Эти методы вызываются, когда экземпляр компонента создается и вставляется в DOM:
constructor(): конструктор, в котором происходит начальная инициализация компонента
componentWillMount(): вызывается непосредственно перед рендерингом компонента
render(): рендеринг компонента
componentDidMount(): вызывается после рендеринга компонента. Здесь можно выполнять запросы к удаленным ресурсам
Обновление
Обновление может быть вызвано изменениями в props или state. Эти методы вызывается, когда компонент повторно отображается:
componentWillReceiveProps(nextProps): вызывается при обновлении объекта props. Новые значения этого объекта передаются в функции в качестве параметра. Как правило, в этой функции устанавливаются те свойства компонента, в том числе из this.state, которые зависят от значений из props.
shouldComponentUpdate(nextProps, nextState): вызывается каждый раз при обновлении объекта props или state. В качестве параметра передаются новый объект props и state. Эта функция должна возвращать true (надо делать обновление) или false (игнорировать обновление). По умолчанию возвращается true. Но если функция будет возвращать false, то тем самым мы отключим обновление компонента, а последующие функции не будут срабатывать.
componentWillUpdate(nextProps, nextState): вызывается перед обновлением компонента (если shouldComponentUpdate возвращает true)
render(): рендеринг компонента (если shouldComponentUpdate возвращает true)
componentDidUpdate(prevProps, prevState): вызывается сразу после обновления компонента (если shouldComponentUpdate возвращает true). В качестве параметров передаются старые значения объектов props и state.
Размонтирование
Этот метод вызывается, когда компонент удаляется из DOM:
- componentWillUnmount()
Обработка ошибок
Этот метод вызывается при возникновении ошибки во время рендеринга, в методе жизненного цикла или в конструкторе любого дочернего компонента.
- componentDidCatch(error, info)