Удалить свойство / член класса декораторов с сопоставленными типами - PullRequest
0 голосов
/ 16 января 2020

Я использую тип goose, чтобы определить мои модели mongoose / mon go -db. Модель типа goose может выглядеть как

class Something {
  @prop({ required: true }) // this is now required in the schema
  public firstName!: string;

  @prop() // by default, a property is not required
  public lastName?: string; // using the "?" marks the property as optional
}

(из https://typegoose.github.io/typegoose/docs/decorators/prop/)

Я хотел бы повторно использовать классы, чтобы получить различные интерфейсы машинописи, например: API звонки.

Как бы я сделал, чтобы обрезать все @prop(...) -линии и генерировать что-то похожее на

interface Something {
  firstName: string,
  lastName?: string
}

Полагаю, я хотел бы использовать https://www.typescriptlang.org/docs/handbook/advanced-types.html#mapped - печатает но я не уверен в этом.

1 Ответ

0 голосов
/ 03 марта 2020

, как @ ford04 уже указано, декораторы типа goose не изменяют класс, когда вы хотите использовать его с new или как тип

...