[React] Hooks [1]

허기웅·2024년 1월 25일
0
post-thumbnail

Hook이란?

Hook은 React 버전 16.8부터 React요소로 새로 추가되었습니다. Hook을 이용하여 기존 Class 바탕의 코드를 작성할 필요 없이 상태 값과 여러 React의 가능을 사용할 수 있습니다. - React 공식문서

Hook 종류

1. useState

  • useState는 가장 기본적인 Hook.
  • 함수형 컴포넌트에서 가변적인 상태를 지니게해줌

특징

  • 함수형 컴포넌트 안에 state를 추가해서 사용
  • 현재 상태를 나타내는 state값과 변경하는 setState값을 한쌍으로 제공
  • state는 초기값을 설정 가능하며 초기값은 첫 렌더링 때 한번 사용됨
  • state는 객체일 필요 없이 다양한 값을 넣을 수 있다.(객체,배열,문자열,숫자 등등..)

ex)


코드를 보면 이렇게 나온다.

초기값이 0이라 0에서 시작

+를 누르면 증가하고

-를 누르면 감소하는걸 바로 바로 렌더링 해줌

2.useEffect

  • 컴포넌트가 렌더링 될때 특정 작업 수행을 설정

특징

  • useEffect(function, deps)의 형태를 사용
  • function에는 실행 함수, deps에는 의존성 배열을 담음
  • 의존성 배열에 뭐가 담기냐에 따라 부수적인 효과 함시가 실행됨

의존성 배열 - 이 배열에 값을 넣으면, 그 값이 바뀔 때만 useEffect를 실행한다.

ex)


코드를 보면 이렇게 나온다.


처음 렌더링 됬을떄 useEffect가 콘솔에 찍힘.

값을 입력(렌더링 할때)마다 useEffect가 콘솔에 찍힘.


이 문제를 해결하기 위해 의존성 배열이 필요.

처음 렌더링 시에만 useEffect가 실행되고 값이 변경되도 콘솔에 useEffect가 찍히지 않음.

profile
반가워요.

0개의 댓글