Yegoroot
10/15/2018 - 9:15 PM

Правильное изминение state

setState это асинхронный метод Те ситуации когда мы используем state, но он изменился в другом месте (например асинхронно) а нам необходимо основываться на его ТЕКУЩЕМ состоянии, то используем function

Но если мы уверенны что ни какого асинхроннного вмешательстова в изминении state не будет то можно использовать первый пожход Хотя второй подход более безопасный и правильный

addCounter = () => {
    // this.setState({
    //     counter: this.state.counter + 1
    // })
    this.setState((prevState) => {
        return {
            counter: prevState.counter +1
        }
    })
}