Loclink

Results 1 comments of Loclink

你说的没错,@nest/swagger生成的json确实不会加入到json文件根部的tags属性中,即使使用了@ApiTags装饰器也不会加入其中,只会加入到每个接口路径描述对象的tags中,这导致free-swagger不会生成代码,只生成了接口所依赖的类型,如图: ![image](https://github.com/yeyan1996/free-swagger/assets/106688231/0d87466b-a94f-407b-b234-431ce37fba2e) 我这边找到了两个解决方案大家可以参考下: 1. 使用 Apifox 这个工具,先导入nest swagger生成的json url,再从apifox导出一个json url,然后就得到了这个json: ![image](https://github.com/yeyan1996/free-swagger/assets/106688231/1f443242-5ee9-40ba-abaf-35b16a0d3d28) ![image](https://github.com/yeyan1996/free-swagger/assets/106688231/f3fb329c-9e80-473f-b40b-ee95b6721269) 接着执行 free-swagger 我们就得到了: ![image](https://github.com/yeyan1996/free-swagger/assets/106688231/35db5357-de0b-420a-85c3-1a58a1744a7f) 另外看了下生成的代码都是没问题,但麻烦的是,所有的生成的接口代码文件都会使用tags中每项作为文件名,这就意味着nest项目中的controller最好不要再使用中文来定义tag了,而是使用英文 2. 方法二,这个方法是我比较推荐的,我们可以在nest项目中创建swagger时,加上额外的方法`addTag()`,该方法接收3个参数,而我们只需要传2个即可,第一个是tag名称,第二个是tag的描述,这个描述可以使用英文,因为free-swagger刚好是根据这个描述作为文件名来创建文件的: ``` ts const options = new DocumentBuilder() .addBearerAuth() .setTitle('接口文档') .setDescription('开箱即用的nestjs项目模板') .setContact('loclink',...