개발자

useQuery로 가져온 데이터를 자식 컴포넌트에서 어떻게 사용하는게 좋은지 궁금합니다.

2023년 04월 03일조회 546

useQuery를 사용해 부모 컴포넌트에서 데이터를 가져온 후, 해당 데이터를 자식 컴포넌트에서 사용할 때 세 가지 방법 중 어떤 것이 좋은지 궁금합니다. 1. 부모 컴포넌트에서 내려 받는다. 2. 자식 컴포넌트에서 query 요청을 한 번 더 한다. 3. 쿼리 클라이언트에서 캐싱된 값을 사용한다. 다른 분들은 이런 상황에서 어떤 방식으로 데이터를 받아오는지 알고 싶습니다!!

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 3

강동희님의 프로필 사진

어떤 데이터를 사용하느냐에 따라서 다를것 같습니다만, 보통 한 페이지에서 하나의 데이터를 쓰는 경우엔 부모 컴포넌트에서 useQuery를 통해서 데이터를 쿼리해온 후 자식 컴포넌트에서 필요한 데이터를 props로 주입해주는 방식을 사용하곤 합니다. 만약 자식 컴포넌트에서 query 해온 데이터의 일부가 아닌 전체를 필요로 한다면, 상단에서 쿼리해와 캐싱된 데이터를 사용하는것도 괜찮은 선택일 것 같습니다. 정답이 정해져 있진 않고, 질문자님의 상황과 설계한 코드를 바탕으로 어떤 방식으로 사용할지 결정하시면 좋을것 같습니다.

강병진님의 프로필 사진

윗 분 말씀처럼 서비스 형식에 맞게 사용하시는게 제일 좋지만 저는 개인적으로 3번을 선호하는 편입니다. 나중에 자식 컴포넌트 구조를 바꿔야하는 일이 생긴다면 수정할 때 용이하기 때문입니다

커리어리 AI 봇님의 프로필 사진

부모 컴포넌트에서 데이터를 가져온 후, 자식 컴포넌트에서 사용할 때 가장 좋은 방법은 상황에 따라 다르지만, 일반적으로 다음과 같은 기준으로 선택할 수 있습니다. 1. 부모 컴포넌트에서 내려 받는다. - 이 방법은 부모 컴포넌트에서 데이터를 가져온 후, props를 통해 자식 컴포넌트에 전달하는 방식입니다. - 가장 직관적이고, 자식 컴포넌트에 의존성을 최소화할 수 있습니다. - 데이터가 자식 컴포넌트에서만 사용되는 경우, 이 방법이 권장됩니다. 2. 자식 컴포넌트에서 query 요청을 한 번 더 한다. - 이 방법은 자식 컴포넌트에서 독립적으로 데이터를 가져오는 방식입니다. - 각 자식 컴포넌트에서 데이터를 가져올 때, 추가적인 네트워크 요청이 발생할 수 있지만, useQuery가 캐싱을 자동으로 처리하므로 성능에 큰 영향을 미치지 않습니다. - 여러 자식 컴포넌트에서 동일한 데이터를 가져오거나, 데이터 로딩 시간이 중요한 경우에 사용됩니다. 3. 쿼리 클라이언트에서 캐싱된 값을 사용한다. - 이 방법은 부모 컴포넌트에서 데이터를 가져온 후, 쿼리 클라이언트의 캐싱된 값을 자식 컴포넌트에서 사용하는 방식입니다. - 부모 컴포넌트와 자식 컴포넌트 간의 데이터 전달이 불필요하고, 자식 컴포넌트에서 독립적으로 데이터를 사용할 수 있습니다. - 여러 자식 컴포넌트에서 동일한 데이터를 가져오거나, 데이터 로딩 시간이 중요한 경우에 사용됩니다. 상황에 따라 가장 적절한 방법을 선택하여 사용하시면 좋습니다. 데이터 사용의 범위와 독립성, 그리고 성능 요구 사항을 고려하여 결정하시면 됩니다. ----- ✅ Chat GPT의 답변을 평가해 주세요! - 답변 내용이 올바른지, 틀린 내용은 없는지 댓글로 작성해 주세요.

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!