컴포넌트 내부의 변화하는 값을 말하고 특정 상황이나 시점에 따라 달라질 수 있는 값은 state를 만들어 처리해줘야 합니다.
컴포넌트에서 State를 다룰 때 사용하는 함수를 말합니다.
const [<상태 값 저장 변수>, <상태 값 갱신 함수>] = useState(<상태 초기 값>);
-useState 함수를 호출하고 바로 반환하는 state 변수(count)와 해당 변수를 갱신하는 함수 (setCount)
활용예제
import React, { useState } from 'react';
function Example() {
const [count, setCount] = useState(0);
return (
<div>
<p> {count} times</p>
<button onClick={() => setCount(count + 1)}>
Click
</button>
</div>
);
}
import React, { useState } from 'react';
useState React에서 Hook을 가져옵니다.
const [count, setCount] = useState(0);
구성 요소 내부에서 Hook Example을 호출하여 새 상태 변수를 선언합니다. useState은 한 쌍의 값을 반환합니다. count버튼 클릭 수를 보유하고 있기 때문에 변수를 호출하고 있습니다.
useState(0)
: 유일한 인수로 전달하여 0으로 초기화합니다.
setCount
: 두 번째로 반환되는 항목은 그 자체로 함수입니다. 이를 통해 count를 업데이트할 수 있습니다.
<button onClick={() => setCount(count + 1)}>
Click
</button>
사용자가 클릭하면 setCount새 값으로 호출합니다. 그 다음 React는 구성 요소를 다시 렌더링하여 Example새 count값을 전달합니다.
State가 아닌 일반 변수는 렌더링을 일으킬 수 없기 때문!
가장 최신 버전의 컴포넌트 상황을 가져오기 위해 컴포넌트를 실행하는 것
컴포넌트는 함수이기 때문에 렌더링이 발생했다는 것은 함수가 호출됐다는 뜻과 같은 이야기 !
함수 호출은 컴포넌트 내부에 있는 코드들이 전부 재실행되었다는 말이다.