У меня есть объект в исходном состоянии, и когда я нажимаю кнопку, я хочу увеличить свойство этого объекта + 1.
(это собственный проект реагирования)
Мой подход :
constructor(props) {
super(props);
this.state = {
myObject: {
incrementCount: 0, // When i press button it should be increment + 1
decrementCount: 0,
}
}
}
...
onPressButton = () => {
this.setState(
prevState => ({
myObject: {
...prevState.myObject,
incrementCount: this.state.myObject.incrementCount + 1,
},
}),
console.log('TOTAL incrementCount: ', this.state.myObject.incrementCount),
);
};
Но когда я нажимаю кнопку, я получаю следующее поведение:
console.log prints 0 for first click,
1 for second click.
Обновление объекта происходит после журнала консоли. Но я использую это в обратном вызове setState.