Skip to content
Meeko
Type to search the guides and the API reference. Open it from any page with / or Ctrl K; move with the arrow keys and open a result with Enter.
Get started

Contents

On this page

Not translated yet

This page has not been translated into English yet, so it is shown in Spanish.

discoverRouteMiddleware

función Since 1.6.0

Descubre el middleware de ruta de app/middleware de un proyecto, también en subcarpetas, sin ejecutarlo. Un archivo es global, como hasta 1.5, salvo que exporte defineRouteMiddleware(fn, { global: false }): entonces es un middleware con nombre, que las rutas eligen con middleware en definePage o en un +group.ts. El nombre es la ruta del archivo sin .ts ni el prefijo numérico de orden de cada parte (10-auth.ts es "auth", admin/20-role.ts es "admin/role"). Los *.server.ts son middleware de ruta de servidor, con defineServerRouteMiddleware y la misma regla de nombres (auth.server.ts es "auth"). Se excluyen *.test.ts, *.spec.ts, *.d.ts y *.client.ts.

ts
import { discoverRouteMiddleware } from "@meekojs/meeko/build";

Source code src/framework/route-middleware-discovery.ts:206

Firma #

ts
function discoverRouteMiddleware(projectRoot: string): Promise<RouteMiddlewareDiscovery>

Parameters #

projectRoot string

Carpeta que contiene app/middleware.

Returns #

Promise<RouteMiddlewareDiscovery>

Los archivos globales isomórficos y de servidor en orden de ejecución, y los middleware con nombre de las dos clases.

Throws #

Error

Si las opciones de un archivo no son un objeto literal, un middleware con nombre no tiene un nombre válido, dos archivos dan el mismo nombre y uno de ellos es con nombre (también auth.ts y auth.server.ts), o un *.server.ts no exporta por defecto un defineServerRouteMiddleware(...).

Example #

ts
import { discoverRouteMiddleware } from "@meekojs/meeko/build";

const { global, named } = await discoverRouteMiddleware(process.cwd());
console.log(global.length, Object.keys(named)); // 1 ["auth", "admin/role"]

See also #

Was this page helpful?

Add a comment

It is sent when you choose “Yes” or “No”. Only the page, your answer and the comment are stored: no cookies and no personal data.

0 of 2000 characters

Edit on GitHub: packages/meeko/src/framework/route-middleware-discovery.ts