我正在使用 NSwag 为后端 API 生成打字稿客户端。最终,它最终生成了一个方法:
login(request: LoginRequest): Promise<AuthResponse>
这很好,但是问题出在LoginRequest
构造函数上。它像这样生成:
export class LoginRequest implements ILoginRequest {
email!: string;
password!: string;
constructor(data?: ILoginRequest) {
if (data) {
// ...
}
}
}
因此,它允许LoginRequest
在没有任何所需数据的情况下创建它。我查看了生成器的来源,似乎没有更改它的选项。
有没有办法强制构造函数使data
参数成为必需的?
请注意,我知道我可以将生成类型设置为使用接口,但据我所知,我会失去一些解析智能(即日期字符串到日期实例)。如果我只能使用接口但以某种方式保留该逻辑,那将是理想的。