동작방식으로 보면, 컴포넌트 내부 변수는 리렌더링이 발생할 때 마다 다시 선언된다.
반면, 외부 변수는 import 시에만 한번 선언된다.
따라서, 외부에서 가져와도 상관없는 함수나 변수(대부분은 재사용을 하기 위한 것들)는 컴포넌트 외부에 선언해도 상관없다. 단, 주의할 사항이 있다.
동일한 컴포넌트를 여러 번 사용할 때다.
만약 모듈에서 컴포넌트 외부에 변수를 선언하고 해당 컴포넌트를 여러번 사용하면, 이 변수가 공유되면서 문제가 생길 수 있다.
참고 글
'react' 카테고리의 다른 글
[React] 리엑트 살펴보기2: 리렌더링 조건, 리렌더링 최적화 방법(memo, useMemo, useCallback, children props) (0) | 2024.03.04 |
---|---|
[React] 리엑트 살펴보기1: 가상 돔과 리엑트의 렌더링 과정 (0) | 2024.03.04 |
[React] pagination: 무한 스크롤 구현하기(+SWR 라이브러리) (0) | 2024.02.19 |
[React] url에 특정한 쿼리스트링을 강제로 추가하기 (0) | 2024.02.18 |
[React] pagination 컴포넌트 만들기(라이브러리x) (0) | 2024.01.09 |