首页 > 解决方案 > 如何声明正确的 Express Err Type

问题描述

我定义errasany因为我不知道如何正确定义它。我希望找到一种express.Error类型,但没有。

我应该如何设置类型err

// Catch Syntax Error in JSON
app.use((err: any, req: express.Request, res: express.Response, next: express.NextFunction) => {
  if (err.status === 400 && err instanceof SyntaxError && 'body' in err) {
    res.status(200).send({ message: 'JSON Syntax Error' });
  } else {
    next();
  }
});

标签: typescriptexpress

解决方案


err此处视为根据any官方类型定义:https ://github.com/DefinitelyTyped/DefinitelyTyped/blob/6b3f9450aa2ced2bae7851acebc5ed9d7e6200c2/types/express-serve-static-core/index.d.ts#L45

所以我觉得any在这里使用是可以的。


推荐阅读