React 애플리케이션을 개발하면서 상태를 관리하는 것은 중요한 부분 중 하나입니다. 이번 포스팅에서는 React의 useState를 사용하여 배열과 객체를 어떻게 관리하고 수정, 추가, 삭제할 수 있는지 살펴보겠습니다.
배열 관리하기
1. 배열 초기화하기
먼저, 배열을 초기화하고 상태로 설정하는 방법입니다.
import React, { useState } from 'react';
function ArrayExample() {
// 초기 배열 상태 설정
const [myArray, setMyArray] = useState(['apple', 'banana', 'cherry']);
// ...
}
2. 배열에 항목 추가하기
// 배열에 항목 추가
const addItem = () => {
const newItem = 'date';
// 새 배열 생성 (기존 배열 복사 + 새 항목 추가)
const updatedArray = [...myArray, newItem];
setMyArray(updatedArray);
};
3. 배열에서 항목 수정하기
// 배열에서 항목 수정
const editItem = (oldItem, newItem) => {
// 새 배열 생성 (항목 수정)
const updatedArray = myArray.map(item => (item === oldItem ? newItem : item));
setMyArray(updatedArray);
};
4. 배열에서 항목 삭제하기
// 배열에서 항목 제거
const removeItem = (itemToRemove) => {
// 새 배열 생성 (항목 제거)
const updatedArray = myArray.filter(item => item !== itemToRemove);
setMyArray(updatedArray);
};
객체 관리하기
1. 객체 초기화하기
import React, { useState } from 'react';
function ObjectExample() {
// 초기 객체 상태 설정
const [myObject, setMyObject] = useState({
name: 'John',
age: 30,
city: 'New York',
});
// ...
}
2. 객체에 속성 추가하기
// 객체에 속성 추가
const addProperty = () => {
const newProperty = 'occupation';
const updatedObject = { ...myObject, [newProperty]: 'Engineer' };
setMyObject(updatedObject);
};
3. 객체의 속성 수정하기
// 객체에서 속성 수정
const editProperty = (property, newValue) => {
const updatedObject = { ...myObject, [property]: newValue };
setMyObject(updatedObject);
};
4. 객체에서 속성 삭제하기
// 객체에서 속성 삭제
const deleteProperty = (propertyToDelete) => {
const { [propertyToDelete]: deletedProperty, ...rest } = myObject;
setMyObject(rest);
};
React에서 useState를 사용하여 배열과 객체를 관리하면 상태를 불변하게 유지하면서도 수정, 추가, 삭제할 수 있습니다. 이러한 방법을 사용하면 React가 변경 사항을 감지하고 컴포넌트를 적절하게 렌더링합니다.
이제 React 애플리케이션에서 배열과 객체를 효과적으로 관리할 수 있는 방법을 알았습니다. 이러한 상태 관리 패턴은 웹 애플리케이션 개발에서 자주 사용되며, React의 강력한 기능 중 하나입니다.