신비한 개발사전
Next.js 페이지의 params 및 searchParams 본문
Next.js 프로젝트에서는 다양한 방법으로 페이지의 route path와 쿼리 파라미터를 읽을 수 있는데, 그중 Pages Router에서 useRouter 훅 외적으로 쓸 수 있는 방법을 정리해봤다.
useParams 훅으로 dynamic route값 읽기
내 페이지가 dynamic route를 쓴다면 useParams() 훅으로 바로 그 값에 접근할 수 있다. useRouter() 훅의 라우터 객체를 통하지 않고 순수하게 query 객체만 읽을 수 있는 전용 훅이다.
// src/pages/[hello]/index.tsx
import { useParams } from "next/navigation";
export default function Page() {
const params = useParams(); // params: { "hello": "URL_PATH" }
return <div>...</div>;
}
useSearchParams 훅으로 쿼리 읽기
페이지 URL에 직접적으로 사용하는 쿼리문도 간편하게 접근 가능하다. useSearchParams() 훅으로 객체를 받은 뒤에 해당 객체에 .get() 메소드를 써 내가 원하는 쿼리 key에 해당하는 값을 가져오면 된다.
// path가 www.사이트.com?hello=world 일 경우
import { useSearchParams } from "next/navigation";
export default function Page() {
const searchParams = useSearchParams();
const queryValue = searchParams.get("hello"); // queryValue: "world"
return <div>...</div>;
}
참고:
'Frontend' 카테고리의 다른 글
react-calendar 달력 커스터마이징하기 (0) | 2024.05.12 |
---|---|
json-server의 다중 엔드포인트를 단일 엔드포인트로 사용하기 (0) | 2024.05.11 |
Next.js App Router에서 라우팅 처리하기 (0) | 2024.04.21 |
SSR과 RSC의 차이 (0) | 2024.04.18 |
Material UI 시작하기 (0) | 2024.04.11 |