angular - 使用 ng-swagger-gen 生成枚举
问题描述
我想从 SpringBoot Rest 服务在 Angular 应用程序中生成模型,为此我使用 ng-swagger-gen 插件。但不知何故,枚举仅作为内联字符串值而不是枚举类生成,因此每次我必须键入字符串值或自己在 Typescript 中创建 Enum 对象。
@Data
public class DummyClass {
private DummyEnum dummyEnum;
}
public enum DummyEnum {
One,
Two,
Three
}
并且只生成了 1 个代表模型的文件:
export interface DummyClass {
dummyEnum?: 'One' | 'Two' | 'Three';
}
大摇大摆的定义如下所示:
"definitions": {
"DummyClass": {
"type": "object",
"properties": {
"dummyEnum": {
"type": "string",
"enum": [
"One",
"Two",
"Three"
]
}
},
"title": "DummyClass"
}
}
相反,当我手动将定义更改为此时,一切看起来都不错,生成了 2 个文件,1 个类和 1 个枚举
"definitions": {
"DummyClass": {
"type": "object",
"properties": {
"dummyEnum": {
"$ref": "#/definitions/DummyEnum"
}
}
},
"DummyEnum": {
"type": "string",
"enum": [
"One",
"Two",
"Three"
]
}
}
在打字稿中:
import { DummyEnum } from './dummy-enum';
export interface DummyClass {
dummyEnum?: DummyEnum;
}
您能否建议正确的方法是什么?我迫切需要 Angular 应用程序中的枚举类,但我希望生成它们而不是手动创建它们。似乎 ng-swagger-gen 插件工作正常,但不知何故 Springfox Swagger2 将 Enums 视为第二类对象,因此未将它们包含在定义部分中。
谢谢
解决方案
推荐阅读
- haskell - 我在 Haskell 中收到错误 Not in Scope 错误
- angular - 制作打字稿参数keyof K和typeof FormGroup
- r - 如何观察闪亮的网址
- javascript - 每个数组元素的独立 HTTP 状态
- python - 如何在python中组合多个except语句
- javascript - 无法在反应应用程序中使用 chartjs 显示圆环图
- javascript - JSON.stringify() 在req.body 中返回object Object
- javascript - 反应视频播放器不在打字稿上播放本地视频
- python - 如何在 django 中一次创建两个模型
- powershell - powershell:将加密的用户密码保存在文件中以进行比较