사과먹는중
당근먹는하니
귀엽고 행복해
당근먹는하니
전체 방문자
오늘
어제
  • 분류 전체보기 (274)
    • 다람쥐🐿 (26)
    • C++ 공부빵야 (7)
    • 공부👻 (5)
    • 프론트엔드✏️ (228)
      • 코드캠프 (120)
      • 팀 프로젝트✨ (31)
      • 개인공부 (67)
    • 프론트엔드 - 바닐라js (7)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 프로그래머스
  • HTML
  • graphql
  • react
  • ssg
  • 회고
  • javascript
  • 프론트엔드
  • CSS
  • 리액트
  • 코드캠프
  • javascrpit
  • JS
  • 부트캠프
  • refreshtoken
  • 공통 컴포넌트
  • 팀프로젝트
  • emotion
  • next.js
  • algorithm
  • 알고리즘
  • 팀플
  • React-hook-form
  • 팀 프로젝트
  • typescript
  • 코딩 부트캠프
  • 배열
  • 코딩
  • 배포
  • 자바스크립트

최근 댓글

최근 글

티스토리

250x250
반응형
hELLO · Designed By 정상우.
당근먹는하니
프론트엔드✏️/코드캠프

Shallow Routing

프론트엔드✏️/코드캠프

Shallow Routing

2022. 6. 5. 14:08
728x90
반응형

 

 Shallow routing은 Next.js의 기능 중 하나로 데이터를 다시 가져오지 않으면서(fetching 메서드를 다시 실행하지 않음) URL을 변경할 수 있는 기능이다. 

이를 통해 URL을 업데이트하면  'pathname'과 'query' 상태를 잃지 않고 라우터 객체를 통해 받을 수 있게 된다.

 

import { useEffect } from 'react'
import { useRouter } from 'next/router'

// Current URL is '/'
function Page() {
  const router = useRouter()

  useEffect(() => {
    // Always do navigations after the first render
    router.push('/?counter=10', undefined, { shallow: true })
  }, [])

  useEffect(() => {
    // The counter changed!
  }, [router.query.counter])
}

export default Page

 

최초 렌더링 후 라우터는 /?counter=10으로 업데이트 되는데, 이 때 페이지가 새로 렌더링 되지 않고 상태 라우터만 변경 된다.

 

 

Shallow Routing은 현재 페이지에서 URL을 변경하는 경우에만 작동한다. 

 

router.push('/?counter=10', '/about?counter=10', { shallow: true })

 

다른 페이지의 경우 { shallow : ture } 를 해도 새 페이지(pages/about.js)를 로드한다. 

 

 

728x90
반응형
저작자표시 비영리 동일조건 (새창열림)

'프론트엔드✏️ > 코드캠프' 카테고리의 다른 글

220606 프론트엔드 부트캠프 27일차 : 이미지 여러개, 검색, 디바운싱, 쓰로틀링  (0) 2022.06.07
Throttling & Debouncing  (0) 2022.06.06
Object.keys(), values, entries, assign  (0) 2022.06.05
220603 프론트엔드 부트캠프 중간고사  (0) 2022.06.05
프론트엔드 부트캠프 한 달,  (0) 2022.06.03
    '프론트엔드✏️/코드캠프' 카테고리의 다른 글
    • 220606 프론트엔드 부트캠프 27일차 : 이미지 여러개, 검색, 디바운싱, 쓰로틀링
    • Throttling & Debouncing
    • Object.keys(), values, entries, assign
    • 220603 프론트엔드 부트캠프 중간고사
    당근먹는하니
    당근먹는하니

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.