使用“ keyof keyof”接口的打字稿映射类型

时间:2020-08-12 11:18:41

标签: typescript

我有这个界面:

interface REDUX_STATE {
  APP: APP,
  AUTH: AUTH,
}

我需要为UPDATE_ACTIONS对象定义一种类型,如下所示:

const UPDATE_ACTIONS = {
  APP: "UPDATE_APP",
  AUTH: "UPDATE_AUTH"
}

因此,很明显,此类型应具有REDUX_STATE相同属性,此示例是APPAUTH

我发现我可以使用type来做到这一点,并且有效

type UPDATE_ACTIONS = {
  [key in keyof REDUX_STATE]: string
}

但是我不能将其定义为interface,例如:

interface UPDATE_ACTIONS {
  [key in keyof REDUX_STATE]: string
}

我收到此错误:

enter image description here

有没有一种方法可以使用界面来完成?

0 个答案:

没有答案