리액트에서는 참조값을 아예 바꿔야 상태가 업데이트 되기 때문에, 배열이나 객체를 새로 생성해서 새로운 참조값을 만들어서 상태를 업데이트해줘야 한다.
const [value,setValue] = useState([1,2,3]);
// 1.원본을 그대로 사용하면 안되고
setValue((prev)=>{
return prev.push(4);
})
// 2.아예 새로운 배열로 덮어씌어야 한다.
setValue((prev)=>{
return [...prev, 4];
})