我正在使用 express 进行路由,我不需要在我的 Controller 方法中使用 Request 对象。但是,我找不到强制排除 Request 参数的简单方法。
第一个示例通过了 typescript 验证。
public async findAll(req: Request, res: Response) {
// search the db for all transactions
const transactions = await Transaction.find();
res.status(200).send({ transactions, incoming: req.body });
}
这个例子编译成有效的 javascript 但没有通过 typescript 验证,因为我得到错误 'req' is declared but its value is never read.
public async findAll(req: Request, res: Response) {
// search the db for all transactions
const transactions = await Transaction.find();
res.status(200).send({ transactions });
}
理想情况下,我根本不想在我的方法参数中包含 Request。如果没有复杂的解决方法,这可能吗?
最佳答案
'req' is declared but its value is never read
错误可能是由 TypeScript noUnusedParameters
选项引起的。如果它干扰开发过程,可以禁用它以支持类似的 TSLint 规则,该规则可以被微调以引起警告而不是错误。
未使用的参数可以按惯例加下划线以避免检查。 TypeScript 就是这种情况:
public async findAll(_req: Request, res: Response) {...}
关于javascript - 使用 typescript 时如何处理快速 Controller 方法参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54054645/