useState 기초 정리import { useState } from 'react';
const [state, setState] = useState(초기값);
state: 현재 상태 값setState: 상태를 변경하는 함수초기값: 상태의 초기값 (숫자, 문자열, 객체, 배열 등 가능)import { useState } from 'react';
export default function Counter() {
const [count, setCount] = useState(0);
return (
<>
<h1>Count: {count}</h1>
<button onClick={() => setCount(count + 1)}>증가</button>
</>
);
}
const [name, setName] = useState("홍길동");
// "홍길동"으로 초기화
return(<>
<input value={name} onChange={(e) => setName(e.target.value)} />
{/* onChange={(e) => setName(e.target.value)}
e : onChange·변경이 발생할 때, 변경과 관련된 정보를 매개변수로 가져옴
e.target : onChange가 발생한 대상인 마크업의 정보
e.target.value : onChange가 발생한 대상인 마크업의 value
*/}
</>)
useState는 컴포넌트 내부에서만 사용 가능useState를 한 컴포넌트에서 사용할 수 있음useState는 조건문이나 반복문 안에서 사용하면 안됨setState)를 호출하면 비동기적으로 작동const [user, setUser] = useState({ name: "홍길동", age: 30 });
setUser({ ...user, age: 31 }); // 스프레드 연산자로 일부 속성만 변경
const [items, setItems] = useState([]);
setItems([...items, "새 항목"]); // 기존 배열에 새 항목 추가
스프레드 연산자 활용