Я создал фабрику, проверяющую, что данное свойство существует в моем классе A.
Это работает:
nameOf<A>("name")
Итак, учитывая строку, она работает, но я не могу ее сделать работает при использовании переменной (dynamici c):
nameOf<A>(this.filters.orderCode) // this.filters.orderCode can contain "id", "name", ... so properties of my A class
Сообщение об ошибке: Аргумент типа «string» не может быть назначен параметру типа «id» | "имя" | ... Мое имя фабрики:
export const nameOf = <T>(name: keyof T) => name;
Мой объект Класс A:
export class A {
id: number = 0;
name = '';
...
}
РЕДАКТИРОВАТЬ
Имя фабрики дает возможность в нем есть смысл, чтобы показать список свойств моей модели в дополнение к проверке: ![enter image description here](https://i.stack.imgur.com/6zpr7.png)
Я использую машинопись 3.2.4
Большое спасибо за вашу помощь.