我有一个同构的react应用程序,我想以某种方式在快速中间件之间传递状态。
我有以下处理表单提交的快速路由:
export const createPaymentHandler = async (req: Request, res: Response, next: NextFunction) => {
const { field } = req.body;
if (!paymentType) {
res.locals.syncErrors = { field: 'some error.' };
next();
return;
}
try {
const { redirectUrl } = await makeRequest<CreatePaymentRequest, CreatePaymentResponse>({
body: { paymentType },
method: HttpMethod.POST
});
res.redirect(redirectUrl);
} catch (err) {
error(err);
res.locals.serverError = true;
next();
}
};
下一个中间件是处理渲染。
目前我正在使用res.locals
,有没有更好的方法或公认的模式?