chenshuai2144 / openapi2typescript

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

fix: generate IntersectionTypes by inherited class #68

Closed scrapstation closed 2 years ago

scrapstation commented 2 years ago

66

AuditFields作为审计字段被Car继承,此时生成的Car错误

// 错误示例
declare namespace API {
  type AuditFields = {
    lastUpdatedOn?: string;
    createdOn?: string;
  };

  type Car = {
    ""?: AuditFields;
  } & {
    no: string;
    name?: string;
    userInfo?: UserInfo;
  };

  type UserInfo = {
    id?: string;
    name?: string;
  };
}
// 正确示例
declare namespace API {
  type AuditFields = {
    lastUpdatedOn?: string;
    createdOn?: string;
  };

  type Car = AuditFields & {
    no: string;
    name?: string;
    userInfo?: UserInfo;
  };

  type UserInfo = {
    id?: string;
    name?: string;
  };
}
scrapstation commented 2 years ago

@chenshuai2144 有时间发一版吗

chenshuai2144 commented 2 years ago

done