Допустим, у вас есть эти два класса:
class Form {
static fields(){
return []; // some magic happens here
}
}
class UserForm extends Form{
email: string;
}
const formFields = UserForm.fields();
Какой тип можно добавить для метода stati c fields
, чтобы получить список UserForm
свойств, в данном случае , только свойство email как ("email")[]
?
Я пытался использовать keyof T
, но он не дает мне желаемого ответа:
static fields<T>(this: T): (keyof T)[] {
return []; // some magic happens here
}
Это возвращает ("prototype" | "fields")[]
вместо ("email")[]
.
У вас есть идеи, как решить эту проблему?
Спасибо!