尝试使用声音类型实现功能性采摘,但我做错了什么:
function pluck<Object extends {}, Key = keyof Object>(key: Key): (o: Object) => Object[Key] {
return object => object[key];
}
TS错误:
键入&#39;键&#39;不能用于索引类型&#39;对象&#39;
答案 0 :(得分:1)
您想要Key extends keyof Object
:
function pluck<Object extends {}, Key extends keyof Object>(key: Key): (o: Object) => Object[Key] {
return object => object[key];
}
泛型中的语法T = S
是指定类型的默认值,但不以任何方式约束类型。