Zoeeey
Stack flows in you
Zoeeey
  • 분류 전체보기 (155)
    • 💡 UXUI (4)
      • UXUI (2)
      • UI (2)
      • UX (0)
    • 🟨 JavaScript (66)
      • 개념 (42)
      • 정리 (2)
      • 문제풀기 (프로그래머스, 코딩애플) (15)
      • 응용하여 자동화or문제해결하기 (2)
      • 기타 (5)
    • ⚛️ React (49)
      • 개념 (27)
      • 개념(Redux) (3)
      • 정리 (4)
      • 문제풀기 (코딩애플: React) (15)
    • 📘 TypeScript (10)
      • 개념 (8)
      • 문제풀기 (코딩애플) (2)
    • 🌐 HTML,CSS (18)
      • 실무에서 자주 발생한 오류들 (10)
      • 뒤늦게 알아서 뼈아픈 유용한 CSS (6)
      • 기타 자주 쓰는 CSS (2)
    • 💻 CS (8)
      • CS (5)
      • 정규표현식 (2)
      • Git,Github (1)

태그

  • redux
  • UXUI
  • 프로그래머스
  • Props
  • Ajax
  • 오류
  • 삼항연산자
  • 코딩애플
  • axios
  • CS
  • array
  • TypeScript
  • json
  • JavaScript
  • object
  • react
  • class
  • CSS
  • state
  • useEffect
전체 방문자
오늘
어제
hELLO · Designed By 정상우.
Zoeeey

Stack flows in you

⚛️ React/개념

React : useEffect, clean up (실행조건)

2023. 5. 23. 17:21

useEffect 실행조건

useEffect(()=>{ 실행할코드 }, [변수나state]);
  • useEffect()의 둘째 파라미터로 []를 넣으면, 안의 변수나 state가 변할 때마다 useEffect 안의 코드를 실행한다.
  • []안에는 state나 변수를 여러개 넣을 수 있다.
  • [] 안에 아무것도 넣지 않으면 mount(로드)시에만 1회 실행한다.

clean up function

useEffect(()=>{ 
  //함수 A
  return ()=>{
    //함수 B
  }
}, [변수나state])

예시

useEffect(()=>{
  let timer = setTimeout(()=>{ setAlert(false) },2000)
  return ()=>{ clearTimeout(timer) } // 기존 타이머 제거
}, []);

언제 실행될까?

  • 의존성 배열에 변수나 state를 넣으면, update(업데이트)되기 전과 unmount(마운트 해제)될 때 실행된다.
  • 의존성 배열을 비워두면, 컴포넌트가 unmount(마운트 해제)될 때만 실행된다. 
    (cleanup함수는 mount시에는 실행되지 않는다.)

언제 쓸까?

타이머나 이벤트리스너, 구독 등의 상황에서 컴포넌트가 다시 렌더링될 때마다 이벤트 리스너 등이 중복으로 등록되는 것을 방지하게 위해 코드를 해제하고 시작한다.


출처 : 코딩애플 https://codingapple.com/

저작자표시 비영리 동일조건 (새창열림)

'⚛️ React > 개념' 카테고리의 다른 글

React : AJAX로 서버와 통신하기 (post, 동시에 요청 여러개 날리기, fetch)  (0) 2023.06.07
React : AJAX로 서버와 통신하기 (ajax, axios)  (0) 2023.05.26
React : Lifecycle, useEffect (사용법)  (0) 2023.05.22
React : styled-components (설치 , 사용, 장단점), css파일 js에 종속시키기  (1) 2023.05.22
React : URL 파라미터 (useParams)  (0) 2023.05.22
    '⚛️ React/개념' 카테고리의 다른 글
    • React : AJAX로 서버와 통신하기 (post, 동시에 요청 여러개 날리기, fetch)
    • React : AJAX로 서버와 통신하기 (ajax, axios)
    • React : Lifecycle, useEffect (사용법)
    • React : styled-components (설치 , 사용, 장단점), css파일 js에 종속시키기
    Zoeeey
    Zoeeey
    길게 생각하고 짧게 그리기

    티스토리툴바