【发布时间】:2019-05-01 01:43:17
【问题描述】:
NestJS 文档展示了如何添加 DTO 以在控制器中使用,以通过使用 class-validator 包来验证请求对象。描述的 DTO 有 TypeScript 类。现在,虽然控制器处理 DTO(TS 类),但 NestJS 提供者(或服务)另一方面,使用 TypeScript 接口。这些 DTO 和接口的形状几乎相同。
现在,我在这里看到了重复的形状定义。并且想知道是否需要这些接口?
我们不能让 DTO 成为形状和验证的真实来源吗?我们正在考虑的一种方法(使 DTO 成为事实来源)是,让一个 openapi 生成器将 DTO 作为输入并生成 openapi 定义,然后另一个 codegen 可以从那里生成一组 typescript 接口供 NestJS 本身使用并且可以与另一组消费者应用程序(如 Angular)共享。
有没有人遇到过类似的问题?你怎么看上面的?感谢您的反馈。
【问题讨论】:
标签: nestjs