[REACT] 전역상태는 어떨 때 사용해야 할까?

우선 가끔 너무 당당하게 헛소리를 하는 GPT 선생님께 해당 내용에 대해서 질의를 해보았습니다

 

이번에 프로젝트를 하면서 특정 값들이 component(prop) drilling이 되는 상황을 발견했습니다.

전역 상태로 관리하는 항목들이 저러한 값들이 있는것들은 생각을 하고 있는 내용이긴 했으나, 한 3~4개정도의 컴포넌트를 drilling하다보니, 이정도면 위의 항목에는 해당하지 않아도 전역상태로 관리해줘야 하는게 아닐까? 라는 생각을 했습니다.

 

해서, 해당 내용까지 GPT에 함께 질의해보았습니다.

 

GPT 선생님꼐서도, prop drilling 이 발생한다면 전역 상태로 분리하는것이 좋은 방법이라고 대답을 해주시네요,

하지만 단순 지피티만 곧이 곧대로 믿기에는 곤란해서, 해당 내용을 구글링하여 좋은 포스트를 발견했습니다.

 

 

TIL 32 | 전역 상태관리

Redux vs Mobx vs Recoil

velog.io

전역적인 상태 관리에 대해서 매우 잘 설명을 해주셔서 해당 글의 내용에 따라 요약을 해보자면,

 

Prop Drilling은 props를 오로지 하위 컴포넌트로 전달하는 용도로만 쓰이는 컴포넌트들을 거치면서 React Component 트리의 한 부분에서 다른 부분으로 데이터를 전달하는 과정을 말한다. Prop Drilling은 prop전달이 3~5개 정도의 컴포넌트라면 문제가 되지 않는다. 하지만 prop 전달이 10개, 15개 그 이상으로 더 많은 과정을 거치게 된다면 코드를 읽을 때 해당 prop을 추적하기 힘들어진다. 결국 이로 인해 유지보수도 더욱 어려워지게 된다.

 

라고 설명이 되어있었습니다. 따라서, 지금 제가 고민하던 3~5개 혹은 그 언저리의 개수까지는 굳이 prop drilling때문에 전역상태로 분리해줄 필요는 딱히 없다는거죠, 아직 규모가 작은 프로젝트만 진행하다보니 그정도의 개수도 복잡하지 않은가? 라는 생각을 하게 되었던 것 같네요.

 

전역 상태가 남용되는 것 또한 권장되지 않는 사항이므로, 전역 상태를 어떤 기준으로 사용하는지에 대한 접근도 상당히 중요하다고 생각하게 되었습니다. 아래 링크 또한 읽어볼만한 가치가 있는 내용이었기에 해당 포스트도 읽으면 해당 내용에 대해서 더 생각을 해보실 수 있을거라고 생각합니다.

 

 

전역상태관리

먼저 상태가 무엇인지 다시 점검해 봅시다. 상태는 변하는 데이터입니다. 특별히 UI, 프론트엔드 개발에서는 "동적으로 표현되는 데이터"입니다.여기에 쇼핑몰에서 흔하게 볼 수 있는 장바구니

velog.io