如何使用typescript-fetch使用openapi-generator生成真正的简约模型接口?

时间:2020-07-23 15:18:19

标签: typescript swagger openapi openapi-generator

我正在尝试openapi-generator及其typescript-fetch生成器实现。总体而言,生成器是好的,但是以我的诚实观点,它做得太多了。

我可以将openapi-generator配置为仅生成模型,这将是我的最终目标。但是,typescript-fetch生成器坚持生成序列化和反序列化帮助器函数,这些函数从exists中导入一些map../runtime。但是,尽管仅生成模型,但是../runtime当然丢失了。就我而言,我完全不需要这些(反序列化器)助手,我想完全省略它们。我目前没有任何选择。

ExampleModel.ts

// This line does not compile in model-only mode
import { exists, mapValues } from '../runtime';

/**
 * 
 * @export
 * @interface ExampleModel 
 */
export interface ExampleModel {
    /**
     * 
     * @type {number}
     * @memberof ExampleModel 
     */
    someNumber?: number;
}

// These functions are useless for me and do only trouble

export function ExampleModelFromJSON(json: any): AuthenticateUserCommand {
    return ExampleModelFromJSONTyped(json, false);
}

export function ExampleModelFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExampleModel {
    if ((json === undefined) || (json === null)) {
        return json;
    }
    return {
        
        'someNumber': !exists(json, 'someNumber') ? undefined : json['someNumber'],
    };
}

export function ExampleModelToJSON(value?: ExampleModel | null): any {
    if (value === undefined) {
        return undefined;
    }
    if (value === null) {
        return null;
    }
    return {
        
        'someNumber': value.someNumber
    };
}

有没有一种方法可以生成真正的简约模型(打字稿接口)?我可以在项目范围内自定义胡须模板吗?任何帮助将不胜感激。

0 个答案:

没有答案