Typescript泛型函数接受以第一个参数为键的对象

时间:2019-03-08 16:08:19

标签: typescript

我想制作一个function,它接受​​第一个参数string,然后如果它的第一个参数作为键,则仅接受第二个object参数,并带有一个{ {1}}值:

boolean

这有效,但是不希望有(首先将对象设置为通用):

const checkFlag = (str:string, obj) => obj[str]

导致有关类型错误的这些结果: enter image description here

enter image description here

我可以使用什么类型的输入?

1 个答案:

答案 0 :(得分:0)

找到我的答案

const checkFlag = <T extends string , K extends {[key in T]:boolean}>(str:T, obj:K) => obj[str]

导致这些类型错误: enter image description here enter image description here