setState is asynchronous action - If you need to use the updated state to do something, you should use a callback function in setState , so it will call after the state is updated: this.setState({data: newData}, () => console.log(this.state.data)) - If you wanna update the state with anything else, for example, set the '"title" to be "Hello", you can use the object in setState function, like this: this.setState({title: 'Hello'}) - But if you have to take the current state and use it to evaluate what to update, you should pass a function to setState function, so you will have access to the previous state and previous props. It will guarantees that you always get the latest update of the state or props: this.setState((prevState, prevProps) => { return {count: prevState.count + 1} } )
Comments
Post a Comment