- [React] 의존성 배열 전달(처음 로드 되었을 때 한 번만 실행)2024년 01월 19일
- KIMJAVAN
- 작성자
- 2024.01.19.:09
728x90네, 맞습니다. useEffect의 의존성 배열은 React 컴포넌트의 렌더링 동작과 관련된 문법적인 요소입니다. 의존성 배열의 사용 여부와 내용에 따라 useEffect가 언제 실행될지 결정됩니다.
- 의존성 배열을 전달하지 않았을 때: useEffect에 의존성 배열을 전달하지 않으면, 컴포넌트가 렌더링될 때마다 useEffect 내부의 코드가 실행됩니다. 즉, 컴포넌트의 상태가 변경될 때마다 useEffect가 호출되어 계속 실행됩니다.
useEffect(() => { // 컴포넌트가 렌더링될 때마다 실행됩니다. }); // 의존성 배열을 전달하지 않음
2. 빈 의존성 배열을 전달했을 때 ([]): useEffect에 빈 배열 []을 의존성 배열로 전달하면, useEffect 내부의 코드는 컴포넌트가 처음 마운트될 때(첫 렌더링 시) 단 한 번만 실행됩니다. 그 후에는 컴포넌트 상태가 변경되어도 실행되지 않습니다.
useEffect(() => { // 컴포넌트가 처음 마운트될 때 한 번만 실행됩니다. }, []); // 빈 배열을 전달
3. 특정 값을 포함한 의존성 배열을 전달했을 때: useEffect의 의존성 배열에 특정 값(상태 변수, 속성 등)을 포함하면, 해당 값이 변경될 때마다 useEffect 내부의 코드가 실행됩니다. 이는 해당 값의 변경을 감지하고 반응해야 할 때 유용합니다.
useEffect(() => { // 의존성 배열에 포함된 값이 변경될 때마다 실행됩니다. }, [dependency]); // 특정 의존성 값을 포함
요약하자면, useEffect의 의존성 배열은 React가 언제 useEffect를 실행할지 결정하는 데 사용되며, 이를 통해 컴포넌트의 라이프사이클 및 상태 변경에 따른 사이드 이펙트(side effect)를 효과적으로 관리할 수 있습니다.
'자바스크립트 > React' 카테고리의 다른 글
[React] 특정 라우터에 왔을 때 강제로 이동시키기 (0) 2024.03.06 [React] navigate(-1); (0) 2024.01.24 [React] get으로 가져온 태그 html로 뿌리기 (0) 2024.01.19 [React] Warning: Expected `onClick` listener to be a function, instead got a value of `object` type. (0) 2023.11.27 [React] map is not a function react (1) 2023.11.27 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)