输入JSON
我有大量的JSON。这是它的摘录。
{
"base.get.v1.Input": {
"properties": {
"request": {
"$ref": "#/components/schemas/base.get.v1.Input.Request"
},
"id": {
"maxLength": 128,
"type": "string"
}
},
"required": ["id"],
"type": "object"
}
}
输出界面
使用OpenApi-generator-cli-3.0.0.jar我得到以下打字稿文件(相对于前面显示的JSON的一部分):
import { BaseGetV1InputRequest } from './baseGetV1InputRequest';
export interface BaseGetV1Input {
request?: BaseGetV1InputRequest;
trid: string;
}
所需结果
是否有一种方法可以扩展request
对象(和后续对象)(求解器或爆炸对象,无论您喜欢使用什么术语)。我希望最终界面像这样:
import { BaseGetV1InputRequest } from './baseGetV1InputRequest';
export interface BaseGetV1Input {
request?: {
entity?: {
code?: 0,
id?: string
},
procedure?: string,
search?: {
type?: "starts" | "contains",
value?: string
}
},
trid: string
}
经过测试的无效解决方案
我曾尝试使用json-schema-ref-parser
解决$ ref自己的问题,但我认为代码生成器在输入JSON中找到properties
时会创建一个子模型。
我也尝试过不带胡须模板(别人让我)。但是输出没有改变。
我对OpenAPI还是很陌生,希望您能为我提供帮助。