전역 모달이 여러 개일 경우 모달 프로바이더는 몇 개가 필요한가요?
전역 모달을 2개 쓰고 싶어서 일단 스토어 2개를 만들었는데요. 모달 프로바이더도 2개를 만들어야하는지, 아니면 하나의 모달 프로바이더에 2개 모달을 모두 넣어도 되는지 궁금합니다. 그리고 만약 하나의 모달 프로바이더에 두 모달을 넣는다면 어떻게 코드를 작성해야 하는지 궁금합니다.
// 1번
export default function ModalProvider({ children }: { children: ReactNode }) {
return (
<>
{createPortal(
<>
<AModal />
<BModal />
</>,
document.getElementById("modal-root")!,
)}
{children}
</>
);
}
// 2번
export default function ModalProvider({ children }: { children: ReactNode }) {
return (
<>
{createPortal(<AModal />, document.getElementById("modal-root")!)}
{createPortal(<BModal />, document.getElementById("modal-root")!)}
{children}
</>
);
}
回答 1
0
안녕하세요 송현정님 이정환입니다
하나의 모달 프로바이더에 두개의 모달을 넣으시면 됩니다! 모달 프로바이더는 그저 모달들을 App 컴포넌트 아래에 렌더링 시켜주기 위한 역할만 하기 때문이에요 😀
코드 작성 방법은 1번으로 하시면 됩니다. modal-root 라는 id를 갖는 div 태그 아래에 컴포넌트를 렌더링 시키는게 목적이기 때문에 2번처럼 각각 createPortal 메서드를 사용해 렌더링 하실 필요는 없습니다.
useMutation 적용 후 새로운 글 등록시 content가 안보여요
0
25
2
6.8 zustand 세션 질문입니다.
0
69
2
next.js 강의에서도 리액트 라이브러리들을 다뤄주시나요?
0
56
2
shadcn에서 radix ui와 base ui 차이는 뭔가요?
0
205
2
updateTodo 함수 생성시 화살표 함수 사용 안하는 이유
0
61
2
4.11 바로 투두 삭제가 안됨 질문
0
73
3
매개변수 updatedTodo 관련 질문
0
55
3
인증 정보가 만료되었을 때 라우트 가드 처리가 궁금합니다!
0
72
2
supabase를 사용하지 않을 경우 세션 데이터의 변경을 감지하고 스토어에 보관하는 방법이 궁금합니다!
0
58
2
4.6 id를 string으로 변경시 오류
0
53
2
리액트 타입스크립트 관련 질문있습니다.
0
52
1
소셜 로그인 구현하기 관련하여 질문이 있습니다!
0
87
2
ui 파일 질문드립니다.
0
63
1
tanstack query devtools에서 질문있습니다!
0
56
2
댓글 삭제 시 isPending 질문
0
55
2
두번째 예외상황에 대해 질문있습니다!
0
54
1
리액트 쿼리 질문입니다
0
56
2
개발자도구에서 components 가 안보입니다.
0
78
3
state 관리에 대한 정리
0
69
3
[(2.4) Shadcn/ui를 소개합니다] 강의 Shadcn 세팅 관련 질문 있습니다.
0
147
3
like 테이블에서 왜 create_at이 필요한지 궁금합니다.
0
66
1
삭제가 바로 안되네요ㅠ
0
55
2
access 토큰은 꼭 소셜서버로부터 받아서 사용해야만하나요?!
0
72
2
프로필 수정 후 post item 의 글들에서 수정된 프로필 업데이트 반영
0
70
2

