typescript - Typescript 映射类型,接口使用“key in keyof”
问题描述
我有这个界面:
interface REDUX_STATE {
APP: APP,
AUTH: AUTH,
}
我需要为UPDATE_ACTIONS
对象定义一个类型,如下所示:
const UPDATE_ACTIONS = {
APP: "UPDATE_APP",
AUTH: "UPDATE_AUTH"
}
所以很明显,这个类型应该具有相同的属性,REDUX_STATE
也就是这个例子是APP
和AUTH
。
我发现我可以做到这一点type
并且它有效
type UPDATE_ACTIONS = {
[key in keyof REDUX_STATE]: string
}
但我不能将其定义为interface
,例如:
interface UPDATE_ACTIONS {
[key in keyof REDUX_STATE]: string
}
我收到此错误:
有没有办法可以使用界面来完成?
解决方案
推荐阅读
- php - 转换 PHP 关联数组
- javascript - 如何返回在数据表中
- javascript - 如何检测由于异步 Web 字体加载而发生的 DOM 元素调整大小?
- html - R 中网络抓取中的错误“open.connection(x, "rb") 中的错误:HTTP 错误 429”
- javascript - customXmlParts() null asyncResult.id
- r - 如何在一个时间窗口中找到多个变量的同步增加?
- sql - 使用 JPA、spring 和 kotlin Map 保存的 json 数据的正确值
- python - 用 0 替换缺失值
- generics - Fortran 中的模板
- jakarta-ee - 在 OpenLiberty 中为 Arquillian 测试配置默认 JMS 连接工厂和队列