I'm learning reactJS and I started to learn about the state. I did this :
const famille = {
membre1: {
nom: "Steve",
age: 45
},
membre2: {
nom: "Bill",
age: 60
},
membre3: {
nom: "Mark",
age: 40
}
}
function App(props) {
const [membres, setMembres] = useState(famille);
function handleAgeChange(){
let newFamille = famille;
newFamille.membre1.age += 1;
newFamille.membre2.age += 1;
newFamille.membre3.age += 1;
setMembres(newFamille);
console.log(membres)
}
return (
<Fragment>
<div className="App">
<h1>{props.titre}</h1>
<ul>
<Membre name={membres.membre1.nom} age={membres.membre1.age}/>
<Membre name={membres.membre2.nom} age={membres.membre2.age}/>
<Membre name={membres.membre3.nom} age={membres.membre3.age}/>
</ul>
<button onClick={handleAgeChange}>Veillir</button>
</div>
</Fragment>
);
}
The <Member />
component only show {name} : {age}
My goal is to add 1 to everyone age when I click on the button. My state is correctly updating but the app isn't and I don't understand why.