虚拟路由

使用 Nitro 的虚拟模块系统以编程方式定义路由。
nitro.config.ts
import { defineConfig } from "nitro";

export default defineConfig({
  routes: {
    "/": "#virtual-route",
  },
  virtual: {
    "#virtual-route": () =>
      /* js */ `export default () => new Response("Hello from virtual entry!")`,
  },
});

虚拟路由允许您在配置中将处理程序定义为字符串,而无需创建单独的文件。当动态生成路由、构建插件或将简单路由保持为内联时,这非常有用。

配置

nitro.config.ts
import { defineConfig } from "nitro";

export default defineConfig({
  routes: {
    "/": "#virtual-route",
  },
  virtual: {
    "#virtual-route": () =>
      /* js */ `export default () => new Response("Hello from virtual entry!")`,
  },
});

routes 选项将 URL 路径映射到虚拟模块标识符(以 # 为前缀)。virtual 选项定义模块内容为字符串或返回字符串的函数。在构建时,Nitro 会将这些虚拟模块解析为实际的处理程序。

该项目中没有路由文件。整个处理程序都内联定义在配置中,Nitro 会在构建时生成路由。

了解更多