Swagger 3.0.2升级致TypeScript模型命名异常,如何修复?
Swagger 3.0.2 升级后 TypeScript 接口命名异常的解决方法
升级 swagger-codegen 版本
旧版swagger-codegen对OpenAPI 3.0的命名解析存在bug,建议升级到最新稳定版。先执行swagger-codegen version查看当前版本,升级到3.0.36及以上版本后,重新执行生成命令,大概率能解决命名冗余问题。添加命名规范参数
在生成命令中加入参数强制简化命名,示例命令:swagger-codegen generate -i ./src/api/swagger.json -l typescript-axios -o ../swagger --model-name-prefix "" --model-name-suffix ""如果仍未解决,可启用
--enable-post-process-file参数,搭配简单的Node脚本批量重命名生成文件,并替换文件内部的类名(比如把ClassApiWebViewsOrderOrder_``替换回Order`)。手动修正OpenAPI 3.0.2文档
检查swagger.json文件中components/schemas下的每个schema定义,部分工具生成的OpenAPI 3.0文档会自动给schema添加路径前缀。手动将每个schema的键名和title字段改为简洁名称(比如Order),再重新生成代码。替换为OpenAPI Generator
swagger-codegen已停止维护,OpenAPI Generator作为其活跃分支,对OpenAPI 3.0的支持更完善,命名策略也更贴近旧版swagger-codegen对2.x的处理。安装后执行以下命令生成代码:openapi-generator generate -i ./src/api/swagger.json -g typescript-axios -o ../swagger
内容的提问来源于stack exchange,提问作者SDB
相关产品推荐
相关产品推荐

