Задать вопрос
@undefined_title

Как правильно обновлять состояние?

this.state = {
  counter: 0
}


this.setState(({counter}) => ({counter: counter + 1}))
// или

this.setState(({counter}) => {
  ++counter
})


// оба варианта работают, второй вариант через sideEffect, это считаетмя плохим тоном? если да то почему?
  • Вопрос задан
  • 581 просмотр
Подписаться 5 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 1
Torin_Asakura
@Torin_Asakura
Lead Architect
Для обновления состояния вызывается функция setState():
this.setState({welcome: "Привет Андрей"});

Изменение состояния вызовет повторный рендеринг компонента, в соответствии с чем веб-страница будет обновлена.

В то же время не стоит изменять свойства состояния напрямую, например:
this.state.welcome = "Привет Андрей";
В данном случае изменения повторного рендеринга компонента происходить не будет.

При этом нам не обязательно обновлять все его значения. В процессе работы приложения мы можем обновить только некоторые свойства. Тогда необновленные свойства будут сохранять старые значения.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы