Q&A
router.replace() 질문
저도 같은 문제가 있었는데요, router.replace("/i/flow/login");을 했을 때 @modal에서 인터셉팅이 발생하여 (beforeLogin)/i/flow/login의 라우팅이 가로채지고, 이에 (beforeLogin)/layout.tsx 의 { children } 쪽에 들어갈 수 있는 컴포넌트가 없어 not-found 페이지가 열린 것 같습니다. ( * (beforeLogin)/layout.tsx 의 { children }을 주석 처리하면 not-found 페이지가 뜨지 않는 것을 확인했습니다..! ) 그래서 팔로우 버튼 handler에서 router.replace("/i/flow/login")이 아닌, 아래와 같이 router.replace("/login"); 으로 해주면, /login/page.tsx에서 배경화면으로 Home(* 아래 사진에서는 HomeBeforeLogin)을 return 해주어 (beforeLogin)/layout.tsx의 { children } 에 끼워주고, 그 상태에서 /login/page.tsx의 router.replace("/i/flow/login"); 이 실행되고 정상적인 인터셉팅이 발생하여 loginModal을 정상적으로 띄울 수 있었습니다. 이걸 의도하고 별도로 트위터에서 /login/page.tsx를 만든건지는 모르겠지만,, 어쨌든 이런식으로 해결해서 답글 남겨봅니다..!
- Likes
- 0
- Comments
- 2
- Viewcount
- 493

