Когда ты вызываешь setState() в конструкторе, React пытается перерисовать компонент до того, как он закончит монтироваться. Это вызывает ошибки и неожиданное поведение.
Использование setState() в конструкторе приводит к:
Can only update a mounted or mounting component.Инициализируй состояние напрямую через прямое присваивание this.state в конструкторе:
constructor(props) {
super(props);
this.state = {
count: 0,
name: 'John'
};
}
Используй setState() только после того, как компонент смонтировался (в методах жизненного цикла типа componentDidMount или обработчиках событий). В конструкторе всегда используй прямое присваивание this.state для инициализации.
Вызов setState() в конструкторе запустит повторный рендер до того, как компонент закончит монтирование, что приведет к ошибке 'Can only update a mounted or mounting component'.
Новый — ещё не проверен сообществом
Вы