728x90
사실 내용적으로는 아는 내용인데 props drilling이란 단어를 들을 때마다 이게 뭐였지란 생각이 계속 들어 정리해보려한다
Props Drilling
props drilling이란 react 컴포넌트 트리에서 props를 통해 데이터를 전달할 때 중간 컴포넌트는 그 데이터가 필요하지 않음에도 하위 컴포넌트에게 데이터를 전달하기 위해 props를 전달해야하는 과정이다
장점
장점이라고 말하긴 애매하지만
- 데이터를 가장 쉽고 빠르게 전달할 수 있다
- 정적으로 따라가기만 해도 어떤 데이터가 어디서 사용되는지 쉽게 파악 가능하다
단점
- 규모가 커지고, 컴포넌트가 많아지면 너무 복잡해진다
- props 의 이름이 중간에 변경된 것을 추적하기 쉽지않다
- 많은 props를 전달하다가 필요없는 props가 계속 남거나 전달될 수 있다
- defaultProps 를 사용할때, props가 전달되지 않았음에도 인지하지 못할 수 있다
해결방법
- 여러 컴포넌트로 나누지 않는다(react에서 권장 x)
- 데이터를 필수로 필요한 최소 공통 부모 컴포넌트에 배치
- defaultProps를 중요하지 않은 컴포넌트에서만 사용(중요한데서 오류가 나면 꼭 볼수 있게)
- 상태관리도구를 사용(Context API, redux, recoil 등)
728x90
'Frontend > React' 카테고리의 다른 글
[React] 리액트 폴더구조 (0) | 2024.04.23 |
---|---|
[React] 보일러 플레이트 (0) | 2024.04.18 |
[React] onClick시 화살표 콜백을 해야하는 이유 (0) | 2024.01.30 |
[React] 리액트란? 리액트를 왜 사용할까 (1) | 2023.12.31 |
[React] Recoil (0) | 2023.12.05 |