본문 바로가기
Frontend/React

[React] React useState 공부하기!

by pin9___9 2022. 8. 18.
728x90

useState란?

[ State ]
우선 State란 컴포넌트가 가질 수 있는 상태를 말한다. 사용자 인터랙션을 통해 컴포넌트의 상태값이 동적으로 변할 경우에는 상태를 관리하는 것이 필요하다.

 

React 16.8버전부터 함수형 컴포넌트(Functional Component)에서도 상태(State)를 관리할 수 있게 되었다. 그것이 useState( )함수이다.

1. Import

React Hooks의 useState는 컴포넌트의 state를 간편히 생성하고 업데이트 시켜줄 수 있게 해주는 도구를 제공한다.

useState를 사용하기 위해선 먼저 React에서 useState를 import 받아야 한다.

import { useState } from 'react';

 

2. 변수 선언

state의 생성과 동시에 가져야 할 초기값을 useState함수의 인자로 넣어주면 state와 setState라는 두가지 요소를 배열 형태로 리턴해준다. 첫 번째 요소의 state명은 임의로 알맞게 설정하면 되고, 두 번째 요소에 set을 붙여준 후 set 다음 문자만 대문자로 설정해 주면 된다.

const [count,setCount] = useState(0);

 


[예제]

setState함수를 이용하여 state값이 변할경우 해당 컴포넌트는 화면에 다시 렌더링 되어 변경된 state를 화면에 업데이트 시킨다. 예를들어 + 버튼을 누를경우 state에 +1을 시켜주고, - 버튼을 누를경우 state에 -1을 시켜주는 함수를 짜 보았다.

  )
import { useState } from 'react'
import './App.css';

export default function App() {
  const [count, setCount] = useState(0);

  const clickPlus = () => {
    setCount(count + 1);
  }
  const clickMinus = () => {
    setCount(count - 1);
  }

  console.log('Count 업데이트 -> ', count);

  return (
    <div className="App">
      <header className="App-header">
        <span>클릭 수: {count}회</span>
        <div className='buttons'>
          <button className='btn' onClick={clickPlus}>클릭➕</button>
          <button className='btn' onClick={clickMinus}>클릭➖</button>
        </div>
      </header>
    </div>
  );
}

 

[실행결과]

 

728x90

'Frontend > React' 카테고리의 다른 글

[React] Redux(2) [payload]  (0) 2022.12.14
[React] Redux(1) [count 만들기]  (0) 2022.12.13
[React] 절대 경로 (Absolute Imports)  (0) 2022.08.19
[React] React Hooks 공부하기!  (0) 2022.08.13
[React] React란?  (1) 2022.07.29

댓글