跳到内容

路由组

app 目录中,嵌套文件夹通常映射到 URL 路径。但是,您可以将文件夹标记为路由组,以防止该文件夹包含在路由的 URL 路径中。

这允许您将路由段和项目文件组织成逻辑组,而不会影响 URL 路径结构。

路由组对于以下情况非常有用:

  • 将路由组织成组,例如按站点部分、意图或团队。
  • 在同一路由段级别启用嵌套布局
    • 在同一段中创建多个嵌套布局,包括多个根布局
    • 选择特定段加入布局
  • 选择在特定路由上加载骨架屏

约定

可以通过将文件夹名称括在括号中来创建路由组:(folderName)

须知:

  • 路由组的命名除了用于组织之外,没有特殊的意义。它们不会影响 URL 路径。
  • 包含路由组的路由不应解析为与其他路由相同的 URL 路径。例如,由于路由组不影响 URL 结构,(marketing)/about/page.js(shop)/about/page.js 都将解析为 /about 并导致错误。
  • 如果您在没有顶级 layout.js 文件的情况下使用多个根布局,则您的主页 page.js 文件应在其中一个路由组中定义,例如:app/(marketing)/page.js
  • 多个根布局导航将导致完整页面加载(而不是客户端导航)。例如,从使用 app/(shop)/layout.js/cart 导航到使用 app/(marketing)/layout.js/blog 将导致完整页面加载。这适用于多个根布局。