Author -  Sai gowtham

How to update an object with setState in React

In this tutorial, we are going to learn about how to update the object properties with a setState method in react.

Consider we have a react component like this.

App.js
import React,{Component} from "react";

class App extends Component{

   state ={
      user: {          name: "John",          age: 19,          active: true      }   }

  render(){
      const {name, age} =  this.state.user;

      return(
          <div>
            <p>{name}</p>
            <p>{age}</p>
            <button>Update age</button>
          </div>
      )
  }
}

export default App;

Now, we need to update the user object properties by calling a setState() method.

Updating the object properties

To update the object properties, we need to use the spread operator in setState method.

Example:

App.js
class App extends Component {
  state = {
    user: {
      name: "John",
      age: 19,
      active: true
    }
  };

  handleAge = () => {
    this.setState({
      user: {        ...this.state.user,        age: 29      }    });
  };

  render() {
    const { name, age } = this.state.user;
    return (
      <div>
        <p>{name}</p>
        <p>{age}</p>
        <button onClick={this.handleAge}>Update age</button>
      </div>
    );
  }
}

export default App;

In the above code, we first initialized a new object then added a copy of the user object using spread operator (...user) and finally we updated the age property with a value 29.

Similarly, we can also use the updater function inside a setState method.

this.setState((state,props)=>{
    return {
        user: {
            ...state.user,
            age: 29
        }
    }
})

Css Tutorials & Demos

How rotate an image continuously in CSS

In this demo, we are going to learn about how to rotate an image continuously using the css animations.

How to create a Instagram login Page

In this demo, i will show you how to create a instagram login page using html and css.

How to create a pulse animation in CSS

In this demo, i will show you how to create a pulse animation using css.

Creating a snowfall animation using css and JavaScript

In this demo, i will show you how to create a snow fall animation using css and JavaScript.

Top Udemy Courses

JavaScript - The Complete Guide 2023 (Beginner + Advanced)
JavaScript - The Complete Guide 2023 (Beginner + Advanced)
116,648 students enrolled
52 hours of video content
$14.99 FROM UDEMY
React - The Complete Guide (incl Hooks, React Router, Redux)
React - The Complete Guide (incl Hooks, React Router, Redux)
631,582 students enrolled
49 hours of video content
$24.99 FROM UDEMY
Vue - The Complete Guide (w/ Router, Vuex, Composition API)
Vue - The Complete Guide (w/ Router, Vuex, Composition API)
203,937 students enrolled
31.5 hours of video content
$14.99 FROM UDEMY