框架
版本

使用 Router CLI 安装

警告

如果您没有使用受支持的打包器,则应仅使用 TanStack Router CLI。 CLI 仅支持生成路由树文件,不提供任何其他功能。

要将基于文件的路由与 TanStack Router CLI 一起使用,您需要安装 @tanstack/router-cli 包。

sh
npm install -D @tanstack/router-cli
npm install -D @tanstack/router-cli

安装完成后,您需要在 package.json 中修改脚本,以便 CLI 可以 watchgenerate 文件。

json
{
  "scripts": {
    "generate-routes": "tsr generate",
    "watch-routes": "tsr watch",
    "build": "npm run generate-routes && ...",
    "dev": "npm run watch-routes && ..."
  }
}
{
  "scripts": {
    "generate-routes": "tsr generate",
    "watch-routes": "tsr watch",
    "build": "npm run generate-routes && ...",
    "dev": "npm run watch-routes && ..."
  }
}

您不应忘记忽略生成的路由树文件。请前往忽略生成的路由树文件部分了解更多信息。

安装 CLI 后,以下命令可通过 tsr 命令使用

使用 generate 命令

根据提供的配置为项目生成路由。

sh
tsr generate
tsr generate

使用 watch 命令

持续监视指定的目录,并在需要时重新生成路由。

用法

sh
tsr watch
tsr watch

启用基于文件的路由后,每当您在开发模式下启动应用程序时,TanStack Router 将监视您配置的 routesDirectory 并在添加、删除或更改文件时生成路由树。

忽略生成的路由树文件

如果您的项目配置为使用 linter 和/或格式化程序,您可能需要忽略生成的路由树文件。此文件由 TanStack Router 管理,因此不应由您的 linter 或格式化程序更改。

以下是一些资源可帮助您忽略生成的路由树文件

警告

如果您正在使用 VSCode,您可能会在重命名路由后意外打开路由树文件(并显示错误)。

您可以通过在 VSCode 设置中将文件标记为只读来防止这种情况。我们的建议是也将其从搜索结果和文件监视器中排除,使用以下设置

json
{
  "files.readonlyInclude": {
    "**/routeTree.gen.ts": true
  },
  "files.watcherExclude": {
    "**/routeTree.gen.ts": true
  },
  "search.exclude": {
    "**/routeTree.gen.ts": true
  }
}
{
  "files.readonlyInclude": {
    "**/routeTree.gen.ts": true
  },
  "files.watcherExclude": {
    "**/routeTree.gen.ts": true
  },
  "search.exclude": {
    "**/routeTree.gen.ts": true
  }
}

您可以在用户级别使用这些设置,也可以通过在项目根目录创建文件 .vscode/settings.json 仅用于单个工作区。

配置

当为基于文件的路由使用 TanStack Router CLI 时,它带有一些合理的默认值,这些默认值应该适用于大多数项目

json
{
  "routesDirectory": "./src/routes",
  "generatedRouteTree": "./src/routeTree.gen.ts",
  "routeFileIgnorePrefix": "-",
  "quoteStyle": "single"
}
{
  "routesDirectory": "./src/routes",
  "generatedRouteTree": "./src/routeTree.gen.ts",
  "routeFileIgnorePrefix": "-",
  "quoteStyle": "single"
}

如果这些默认值适用于您的项目,则您无需配置任何内容!但是,如果您需要自定义配置,您可以通过在项目根目录中创建 tsr.config.json 文件来完成。

您可以在基于文件的路由 API 参考中找到所有可用的配置选项。

订阅 Bytes

您的每周 JavaScript 新闻。每周一免费发送给超过 100,000 名开发者。

Bytes

无垃圾邮件。随时取消订阅。