Next.js 路由全面解析:从 Pages Router 迁移到 App Router

💡 原文中文,约3400字,阅读约需8分钟。
📝

内容提要

Next.js提供了两套路由解决方案:Pages Router和App Router。自v13.4版本起,App Router成为默认的路由系统,提供更强大的功能和更灵活的代码组织方式。

🎯

关键要点

  • Next.js 提供两种路由解决方案:Pages Router 和 App Router。

  • 自 v13.4 版本起,App Router 成为默认路由系统,提供更多优势。

  • Next.js 的路由系统基于文件系统,每个文件对应一个路由地址。

  • App Router 提供更强大的功能、更好的性能和更灵活的代码组织方式。

  • App Router 通过引入 layout.js、template.js 等特殊文件改善代码组织。

  • App Router 与 Pages Router 可以共存,但 App Router 优先级更高。

  • App Router 通过文件夹定义路由,嵌套文件夹可创建嵌套路由。

  • 页面通过创建名为 page.js 的文件来定义,展示 UI 内容。

  • 布局文件通常命名为 layout.js,定义多个页面共享的 UI 结构。

  • 模板通过 template.js 文件定义,创建新实例,不保持状态。

  • loading.js 文件用于展示加载界面,使用 React 的 Suspense API。

  • error.js 文件用于创建错误处理的展示 UI,使用 React 的 Error Boundary 功能。

  • not-found.js 文件用于定义 404 页面,自定义资源不存在时的效果。

➡️

继续阅读