Вот интерфейс:
interface {
State?: string;
Profession?: string;
}
Теперь я хочу использовать функцию getProperty для получения значения на основе ключа объекта.
function getProperty<Context, K extends keyof Context>(obj: Context, key: K): Context[K] {
return obj[key];
}
let key: string = 'State';
getProperty(context, key);
Теперь он возвращает ошибку
> TSError: ⨯ Unable to compile TypeScript: index.ts:50:33 - error
> TS2345: Argument of type 'string' is not assignable to parameter of
> type '"State" | "Profession"'.
Как мне решить эту проблему?