javascript - 使用 typescript 时如何处理快速 Controller 方法参数?

标签 javascript node.js typescript express routing

我正在使用 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/

相关文章:

typescript - 类型 'null' 的参数不可分配给类型 'TableContinuationToken' 的参数

javascript - JavaScript中for循环的使用

javascript - 扩展剑道多选并使用 MVVM

javascript - 上传时检查 JavaScript 中的图像尺寸

java - 如何发出 HTTPS GET 请求来与其他方竞争并尝试成为最快的?

node.js - 使用 TypeORM 在 Postgres bytea 上保存缓冲区仅存储 10 个字节

javascript - jquery focus 表现奇怪,只在第一次工作

node.js - 如何增加 gulp 任务的堆栈跟踪?

sql - 通过模型关联对nodejs进行序列化

angular - 通用类型 'CanDeactivate<T>' 需要 1 个类型参数