라이브러리 사용 경험이 아니라 History API와 경로 매칭 기반 동작 원리를 어디까지 따라가는지 본다. 뒤로가기·데이터 페칭까지 한 흐름으로 설명하면 깊이 질문을 이어간다.
클라이언트 사이드 라우팅은 링크 클릭의 기본 페이지 이동을 막고 history.pushState로 URL만 바꾸는 데서 시작한다. 서버에 HTML을 새로 요청하지 않고 라우터가 현재 경로를 매칭해 해당 컴포넌트를 렌더링하며, 필요한 데이터는 그 컴포넌트가 마운트되면서 비동기로 가져온다. 뒤로가기와 앞으로가기는 popstate 이벤트를 라우터가 받아 같은 매칭 과정을 다시 돌려 화면을 교체한다. 결국 URL 갱신·경로 매칭·렌더링·페칭 네 단계가 같은 흐름 안에서 맞물려 돌아야 라우팅이 깨지지 않는다.
라우트 전환이 느려서 prefetch나 코드 스플리팅으로 잡아본 경험이 있다면 라우터 동작 흐름과 연결할 수 있다
뒤로가기에서 화면이나 스크롤이 깨졌던 버그를 잡아본 경험이 있다면 popstate 처리와 묶어 말할 수 있다
라우트별 데이터 페칭 전략을 고민해본 경험이 있다면 컴포넌트 마운트 타이밍과 로딩 UX 이슈로 연결된다
아직 공개된 답변이 없어요. 첫 공개 답변을 남겨보세요.