I have an object literal such as the following (all properties are known at compile time):
const foo = {
"hello": "hola"
};
If foo
were an interface rather than a variable, I could easily do something like
/** THEORETICAL ONLY - Does not compile! */
function translate(input: keyof foo): string {
return foo[input];
}
However, doing so with a variable does not work, since the compiler cannot find an interface with the name foo
.
Does Typescript support keyof
operations on object literals whose values are known at compile time?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…