Navigation Components in React

From the React Router v7 cheat sheet Ā· Routing Basics Ā· verified Jul 2026

Navigation Components

Link, NavLink, and programmatic navigation

typescript
import { Link, NavLink, useNavigate, Navigate } from 'react-router'

// Basic navigation
<Link to="/about">About</Link>
<Link to="/users/123">User Profile</Link>
<Link to=".." relative="path">Go Up</Link>

// NavLink with active styles
<NavLink
  to="/tasks"
  className={({ isActive, isPending }) =>
    isActive ? "active" : isPending ? "pending" : ""
  }
>
  Tasks
</NavLink>

// Programmatic navigation
function LoginForm() {
  const navigate = useNavigate()

  const handleSubmit = async (e) => {
    e.preventDefault()
    await login()
    navigate("/dashboard", { replace: true })
  }

  return <form onSubmit={handleSubmit}>...</form>
}
šŸ’” NavLink automatically adds active class for current route
⚔ Use navigate with replace: true to avoid back button issues
šŸ“Œ Pass state through navigation for context
🟢 Framework Mode prefetches via <Link prefetch="intent"> (also render/viewport)
navigationlinknavlink

More React tasks

Back to the full React Router v7 cheat sheet