State는 Toggle Switch나 Counter 처럼 컴포넌트 내부에서 변할 수 있는 값이라고 했다.
이를 다르게 표현하면 state 는 컴포넌트 안에서 다뤄지고, 업데이트 할 수 있다고도 할 수 있다.
또한 state 가 변경되면 컴포넌트가 Re-rendering 되어 사용자에게 변경된 state 에 맞는 화면을 보여준다.
import React, { useState } from "react";
import "./styles.css";
function CheckboxExample() {
const [isChecked, setIsChecked] = useState(false);
const handleChecked = (event) => {
setIsChecked(event.target.checked);
};
return (
<div className="App">
<input type="checkbox" checked={isChecked} onChange={handleChecked} />
<span>{isChecked ? "Checked!!" : "Unchecked"}</span>
</div>
);
}
export default CheckboxExample;
React 에서는 이러한 state를 다루는 방법 중의 하나로 useState 라는 특별한 함수를 제공한다.
이 함수의 사용 방법과 작동 방식을 위의 체크박스로 예를 들어보자
function CheckboxExample() {
// 새로운 state 변수를 선언하고, 여기서는 이것을 isChecked 라 부르겠습니다.
const [isChecked, setIsChecked] = useState(false);
const [상태 값 저장 변수, 상태 값 갱신 함수] = useState(상태 초기 값);
<span>{isChecked ? "Checked!!" : "Unchecked"}</span>
condeSnadBox로 예제 확인