• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

State 끌어올리기 구분.

22.05.26 21:54 작성 조회수 261

0

안녕하세요.

 

state 끌어올리기는 하는 이유는 즉 여러곳에서 사용 할 데이터를 자식에서 부모로 보내 
또 다른 컴포넌트에서 사용하도록 하기 위한 것으로 이해가 됩니다.

1. 상태를 여러곳으로 사용하는  경우에는 자식 => 부모로 보내는 패턴을 이용하는 것이 맞는 방법이고 자식에서 계속 상태를 가지고 부모로 보내는 방식을 잘못된 방식인가요?

2. 만약 어떠한 하나의 상태만 공통적으로 사용하는 경우 그 상태만 끌러올려서 사용하는게 맞는 것인지. 아니면 다른 상태도 같이 끌어올려 함수형 컴포넌트로 만든 후 부모로 보내는게 맞는 건가요?
만약 어떤건 부모로 어떤건 자식에서 관리를 하면 약간 중구난방의 코드가 될 것 같은데.. 
어떠한 방식이 좋은지 궁금합니다.

맞다 틀리다의 영역인지 개발패턴이나 디자인에 영역에 따라 다른 것인지 궁금합니다.

 

이전 질문 답변 감사했습니다.

 

답변 1

답변을 작성해보세요.

2

컴포넌트의 상태를 다른 컴포넌트에서도 사용한다면 이 상태를 사용하는 컴포넌트들의 최상위 컴포넌트에 상태를 두는 것이 좋습니다(상태 끌어올리기). 그렇지 않으면 각 컴포넌트별로 상태를 관리해야하기 때문이죠. 이것은 코드 중복이라서 코드를 수정할 때 문제가 되기 쉽습니다.

공통으로 사용하는 상태만 끌어올리는 것이 좋습니다. 코드가 중구난방이 될것을 염려하셨는데요. 여러번 컴포넌트 설계를 해보면서 익혀야 하는 부분이기도 합니다. 컴포넌트 설계하시는데 리액트로 생각하기 문서도 함께 읽어 보세요.