선언형 이동은 Link, 조건 처리 뒤 이동은 useRouter를 선택한다
사용자가 링크를 보고 직접 누르는 이동과 코드가 이벤트 결과에 따라 이동시키는 경우를 나눠야 한다.
| 이동 시나리오 | 선택 | 코드 위치 | 판단 기준 |
|---|---|---|---|
| 메뉴/내비게이션 | Link | 서버 또는 클라이언트 컴포넌트 | 목적지가 화면에 드러남 |
| 카드 목록 상세 이동 | Link | 목록 렌더링 위치 | href를 데이터 id로 조립 |
| 로그인 성공 후 이동 | useRouter.push | client component | 검증 완료 뒤 이동 |
| 저장 후 뒤로가기 | router.replace 또는 back | client component | 히스토리 제어 필요 |
| 데이터 다시 읽기 | router.refresh | client component | 현재 경로에서 서버 데이터 재요청 |