Javascript Swagger Codegen:如何将所有文件合并到一个文件中以生成客户端代码
我刚开始招摇和点头。我能够在我的NodeExpress应用程序中实现Swagger,也能够准确地使用Swagger Codegen(typescript Angular)生成typescript客户端代码 我遇到的一个问题是生成的代码分布在许多不同的文件中。我希望它只输出一个文件Javascript Swagger Codegen:如何将所有文件合并到一个文件中以生成客户端代码,javascript,angular,express,swagger,swagger-codegen,Javascript,Angular,Express,Swagger,Swagger Codegen,我刚开始招摇和点头。我能够在我的NodeExpress应用程序中实现Swagger,也能够准确地使用Swagger Codegen(typescript Angular)生成typescript客户端代码 我遇到的一个问题是生成的代码分布在许多不同的文件中。我希望它只输出一个文件api.ts,它包含从api调用到接口/模型的所有内容 我一直在寻找解决这个问题的方法,因为随着后端的增长,很难读取和维护生成的客户端代码 如有任何建议或建议,将不胜感激 节日快乐!多谢各位 编辑:我已经为这个问题寻找了
api.ts
,它包含从api调用到接口/模型的所有内容
我一直在寻找解决这个问题的方法,因为随着后端的增长,很难读取和维护生成的客户端代码
如有任何建议或建议,将不胜感激
节日快乐!多谢各位
编辑:我已经为这个问题寻找了几天的答案,但仍然没有找到答案。我目前正在使用ASP.NET Core进行一个项目,他们有
NSwag
,它实现了我希望通过节点Swagger
实现的目标。Swagger使用胡须模板生成代码。为了简化
更改您可以简单地创建和之一的副本
修改一下
然后,您可以使用修改后的模板,如下所示:
swagger-codegen-cli generate -t path/to/template/dir/ -i spec.json
但是,无法使用模板更改输出目录结构
单独地为此,您需要一个定制的codegen模块。您可以选择或修改其中一个。TL;博士
您可以将所有文件编译成一个*.ts
文件,如中所示
连续集成方法
Swagger代码生成器简化了维护,因为它允许您从连续集成的角度进行思考
您不应该担心代码审查或美学(因为它是机器生成的代码),而应该担心:
- API版本控制
- 函数、方法和类签名
- 文件
谢谢。虽然我已经完成了整合工作,但这个答案提供了一个准确的解决方案。对于NPM软件包,如果您正确地提供了版本控制标记,您也可以使用GitHub存储库,如所示。我当前生成的是一个文件,而不是多个文件,我希望相反,您是否介意共享您的配置以完成此操作,以便o/p是多个文件而不是一个文件?我尝试对petStore.json使用它,它生成了一个file@Jaya在我回答之前,我可以问一下我们是否在同一页上吗?(typescript angular,swagger codegen 2.3.0)?我使用此处定义的
swagger js codegen:^1.12.0
,并为vuejs键入脚本。。基本上,尝试为公开其swagger.json文件的api生成ts模型和ts客户端。使用swagger codegen生成typescript获取客户端存根,您应该可以开始了;)