Files
XCDesktop/api/utils/asyncHandler.ts
2026-03-08 01:34:54 +08:00

11 lines
358 B
TypeScript

import type { NextFunction, Request, Response } from 'express'
export const asyncHandler =
<TReq extends Request = Request, TRes extends Response = Response>(
fn: (req: TReq, res: TRes, next: NextFunction) => unknown | Promise<unknown>,
) =>
(req: TReq, res: TRes, next: NextFunction) => {
Promise.resolve(fn(req, res, next)).catch(next)
}