我目前正在使用Swagger库:https://github.com/DarkaOnLine/L5-Swagger
在我的示例模型类中,如下所示:
/** @OA\Schema(
* title="ProductPromotion",
* @OA\Property(property="id", type="integer"),
* @OA\Property(property="uid", type="string"),
* @OA\Property(property="store_id", type="integer"),
* )
*/
class ProductPromotion extends Model
{
..
}注意,我在第三个属性中写了"store_id“。但是,当我使用这个jar文件:openapi-generator-cli-4.1.3,时,我得到了这样的接口:
export interface ProductPromotion {
id?: number;
uid?: string;
storeId?: number;
}名称从"store_id“更改为"storeId”。我不想这样,有人知道怎么解决吗?
编辑:用于生成以下内容的命令:
java -jar openapi-generator-cli-4.1.3.jar generate -i C:\Users\ASUS\Desktop\OpenAPICodegen\swagger.json -g typescript-angular -o C:\Users\ASUS\Desktop\OpenAPICodegen\dist发布于 2019-12-23 13:46:05
感谢iizno的回答,我在生成类型记录代码时添加了这个附加属性,从而解决了这个问题。
java -jar openapi-generator-cli-4.1.3.jar generate -i C:\Users\ASUS\Desktop\OpenAPICodegen\swagger.json -g typescript-angular -o C:\Users\ASUS\Desktop\OpenAPICodegen\dist --additional-properties modelPropertyNaming=snake_case发布于 2019-12-23 12:55:02
也许这能帮你:
https://github.com/openapitools/openapi-generator/wiki/FAQ
TypeScript由于变量命名(snake_case到camelCase)中的更改,JSON响应未能正确地反序列化为对象。有什么办法保留原名吗?是的,在生成TypeScript客户端时请使用以下选项:
modelPropertyNaming
Naming convention for the property: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name (Default: camelCase)https://stackoverflow.com/questions/59375173
复制相似问题