TIL - React Router (match/location/history)

Gray Sheep·2022년 1월 25일
0

Router Props

브라우저와 리액트 앱의 라우터를 연결하게 되면 라우터가 history api에 접근 가능,
각각의 Route와 연결된 컴포넌트에 props으로 match,location,history라는 객체를 전달하게 된다

match

Route path와 URL의 매칭정보가 담겨져 있음

  • path: [string] 라우터에 정의된 path
  • url: [string] 실제 클라이언트로부터 요청된 url path
  • isExact: [boolean] true일 경우 전체 경로가 완전히 배칭될 경우에만 요청을 수행
  • params: [JSON object] url path로 전달된 파라미터 객체

Location

현재 페이지의 정보

  • pathname: [string] 현재 페이지의 경로명
  • search: [string] 현재 페이지의 query string
  • hash: [string] 현재 페이지의 hash

History

브라우저의 historu와 유사
스택(stack)에 현재까지 이동한 url경로들이 담여있는 형태,
주소를 임의로 변경하거나 되돌아살 수 있도록 해준다

  • length: [number] 전체 history 스택의 길이
  • action: [string] 최근에 수행된 action(PUSH, REPLACE OR POP)
  • location: [JSON object] 최근 경로 정보
  • push(path,[state]): [function] 새로운 경로를 history 스택으로 푸시하여 페이지를 이동
  • replace(path,[state]): [function] 최근 경로를 history 스택에서 교체하여 페이지를 이동
  • go(n): [function] history 스택의 포인터를 n번째로 이동
  • goForward(): [function] 앞 페이지로 이동
  • goBack(): [function] 뒤 페이지로 이동
  • block(prompt): [function] history스택의 PUSH/POP동작을 제어

참고 https://gongbu-ing.tistory.com/45

profile
2022 목표 - 리액트 잘하기

0개의 댓글