梗概

  • 在指定文件名的文件下,按指定语法导出的函数,会被视作路由函数
  • vite-plugin-ssr会遍历所有路由函数,如果路由函数返回真,则会导向路由函数所对应的页面
    • 对应的页面由路由函数所在的文件名所决定

示例

路由函数为我们提供了完整且灵活的编程能力,来实现高级路由逻辑,例如路由守卫:

// /pages/product/edit.page.route.js
// 这个文件定义了 `/pages/product/edit.page.js` 的路由
import { resolveRoute } from "vite-plugin-ssr/routing";
export default async (pageContext) => {
  // 确保 `/product/@id/edit` 路由只能被管理员访问
  if (!pageContext.user.isAdmin) {
    return false;
  }
  // 我们可以使用 `vite-plugin-ssr` 的路由字符串解析器
  return resolveRoute("/product/@id/edit", pageContext.urlPathname);
};