Skip to main content

Link 컴포넌트

Next.js의 <Link>는 HTML <a> 태그를 확장하여 prefetching과 client-side navigation을 제공합니다. 아래 링크를 클릭하면서 페이지 전환이 전체 reload 없이 일어나는지 확인해보세요.

파일 구조

app/linking/
├── page.tsx       → /linking (현재 페이지)
└── blog/
    ├── page.tsx   → /linking/blog
    └── ...

블로그 포스트 목록 (Link 사용)

hover 시 prefetch가 시작되고, 클릭 시 client-side 전환이 일어납니다.

핵심 코드

import Link from 'next/link'

export default async function Post({ post }) {
  const posts = await getPosts()
  return (
    <ul>
      {posts.map((post) => (
        <li key={post.slug}>
          <Link href={`/blog/${post.slug}`}>
            {post.title}
          </Link>
        </li>
      ))}
    </ul>
  )
}

Good to know: <Link>는 Next.js에서 라우트 간 이동의 기본 방법입니다. 프로그래매틱 네비게이션에는 useRouter hook을 사용할 수 있습니다.