개발자

Intercepting Routes로 만든 modal에 데이터를 어떻게 전달하는게 좋을까요?

2024년 01월 18일조회 196

Nextjs 14 app router를 사용하고 있습니다. Intercepting Routes와 Parallel Routes를 이용해서 Modal을 불러오고 있습니다. Modal에 진입할때 <Link href={"modal주소"} />를 클릭해서 진입을 하고 있습니다. 이때, Modal에서 Server에 HTTP GET 요청을 보내야하는데, username이나 userpost같은 데이터를 필요로합니다. 저는 <Link href={{pathname:"모달주소",query:{key:value}}}>이렇게 query로 전달하는 방식을 사용하고 있습니다. 하지만, 찾다보니 왠만한 정보는 query로 전달하는 것을 지양하는 것이 좋다해서 무슨 방법으로 전달해야할까 고민입니다. 어떤 방법으로 전달하는것이 가장 좋을까요?

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

답변 1

백승훈님의 프로필 사진

상태관리 라이브러리를 통해 전달해도 될 것 같내요 모달에서 사용될 주소와 필요한 키 벨류를 전달하고 모달을 open close하면 될 듯 합니다. 모달의 오픈, 닫기, 버튼의 동작등을 함수나 props로 내려주는 방식으로 상태관리 라이브러리에 연결해서 관리해도 좋을 것 같습니다

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

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

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 01월 18일

로직이 복잡하지 않다면 query를 통해 전달하는 것보다는, React의 Context API나 Redux 같은 상태 관리 라이브러리를 사용하여 전역 상태를 관리하고 이를 통해 데이터를 전달하는 것이 좋습니다. Context를 설정하여 모든 컴포넌트에서 접근할 수 있도록 하면 어느 위치에서도 데이터에 접근할 수 있습니다. 이 경우, 서버에 HTTP GET 요청을 보낼 때 필요한 정보(username, userpost 등)을 Context에서 가져와서 사용할 수 있습니다. React Context API는 단순하고 작은 어플리케이션에 적합하지만, 규모가 크고 복잡한 앱의 경우 Redux와 같은 라이브러리를 사용하는 것이 좋습니다. Redux는 상태 관리뿐만 아니라 action, reducer 개념을 이용하여 애플리케이션의 상태 변화를 예측 가능하게 만들며, DevTools로 state 변화와 performance 등을 쉽게 체크할 수 있어 디버깅에 용이합니다. 하지만 Next.js에 내장된 Data Fetching 메소드(`getInitialProps` or `getServerSideProps`)나 SWR과 같은 데이터 패칭 라이브러리들을 동시에 사용하는 경우 이들과 함께 Context API와 Redux의 동작 방식을 잘 고려해야합니다.

목록으로

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