TanStack Router 使用嵌套路由树来将 URL 与要渲染的正确组件树进行匹配。
要构建路由树,TanStack Router 支持
两种方法都支持完全相同的核心特性和功能,但是基于文件的路由以更少的代码实现相同或更好的结果。因此,基于文件的路由是配置 TanStack Router 的首选和推荐方式。大部分文档都是从基于文件的路由的角度编写的。
嵌套路由是一个强大的概念,它允许您使用 URL 渲染嵌套组件树。例如,给定 URL /blog/posts/123,您可以创建一个如下所示的路由层级结构
├── blog
│ ├── posts
│ │ ├── $postId
├── blog
│ ├── posts
│ │ ├── $postId
并渲染一个如下所示的组件树
<Blog>
<Posts>
<Post postId="123" />
</Posts>
</Blog>
<Blog>
<Posts>
<Post postId="123" />
</Posts>
</Blog>
让我们将这个概念扩展到一个更大的站点结构,但现在使用文件名
/routes
├── __root.tsx
├── index.tsx
├── about.tsx
├── posts/
│ ├── index.tsx
│ ├── $postId.tsx
├── posts.$postId.edit.tsx
├── settings/
│ ├── profile.tsx
│ ├── notifications.tsx
├── _pathlessLayout/
│ ├── route-a.tsx
├── ├── route-b.tsx
├── files/
│ ├── $.tsx
/routes
├── __root.tsx
├── index.tsx
├── about.tsx
├── posts/
│ ├── index.tsx
│ ├── $postId.tsx
├── posts.$postId.edit.tsx
├── settings/
│ ├── profile.tsx
│ ├── notifications.tsx
├── _pathlessLayout/
│ ├── route-a.tsx
├── ├── route-b.tsx
├── files/
│ ├── $.tsx
以上是一个有效的路由树配置,可以与 TanStack Router 一起使用!基于文件的路由有很多强大的功能和约定需要解包,所以让我们稍微分解一下。
路由树可以通过几种不同的方式进行配置
请务必查看上面每个路由树类型的完整文档链接,或者直接进入下一节开始使用基于文件的路由。
您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。