chenshuai2144 / openapi2typescript

一个被大范围使用的小工具
312 stars 136 forks source link

add customTypeName hook #43

Closed loulin closed 2 years ago

loulin commented 2 years ago

增加自定义参数类型名称hook。

目前“叠加生成的Param类型”名称与函数名称相同,但是类型名称统一放在了namespace下面,很容易冲突。 比如PetController.query,就直接生成了API.queryParams类型,如果其他controller有同名的query函数,就会用这同一个类型名称。

一种解决办法是让后端改函数名,比如PetController.queryPetsShopController.queryShops,而且还必须保证函数名全局唯一。另一种是将这些类型放在各自的模块里面。

但是都比较麻烦,所以可以考虑用hook的方式进行自定义,就可以生成类似API.PetQueryParams的名称,参考test/test.js

如果可行的话还需要在@umi/plugin-openapi 加上customTypeName: joi.function()验证。