React Router 入门
React 本身只专注于构建 UI,它并不内置路由系统。如果你想为应用添加“页面跳转”的功能,就需要借助第三方库 —— 最常用的就是 React Router
。本节将带你快速了解 React Router 的核心概念、基本用法,并通过简单示例学会构建一个多页面的 React 应用。
什么是 React Router?
React Router 是一套用于在 React 应用中实现客户端路由(SPA 单页应用)的库。它的目标是让你通过声明式的方式定义路由,让不同路径对应不同的组件页面, 从而构建出多页面体验。
React Router 提供了 react-router-dom
包用于 Web 开发,包含了最常用的组件如 BrowserRouter
、Routes
、Route
和 Link
等。
React Router 社区活跃,版本更新频繁,从 v4 到 v6 已发展多年,已被无数开源项目和企业级应用验证。并且它采用 MIT License 开源许可证,可放心用于个人或商业用途。
虽然 React Router 并不是由 React 官方团队开发,但它是由经验丰富的社区开发团队 —— Remix 团队(原 React Training)主导维护的。它已经发展多年,是目前最主流、最广泛使用的 React 路由库。
虽然 React Router 是最常用的路由库,但你也可以了解一些替代方案,如:
- Next.js:内置文件式路由,更适合 SSR 应用。
- Remix:React Router 背后的同一团队打造,强调 Web 标准。
- TanStack Router:类型安全、功能强大的新兴路由库。
但对于大多数常规项目来说,React Router 已经完全够用,并且是最安全稳妥的选择之一。
安装 React Router
使用 npm 或 yarn 安装最新版(目前为 React Router v6):
npm install react-router-dom
或:
yarn add react-router-dom