Typescript 索引属性被迫字符串,抱怨
我有一个接口定义为:Typescript 索引属性被迫字符串,抱怨,typescript,Typescript,我有一个接口定义为: export interface ICardinalityConfig<T> { [key: Extract<keyof T, string>]: [number, number] | number | true; } 导出接口ICardinalityConfig{ [key:Extract]:[number,number]| number | true; } 但是我在键上得到一个错误: 索引签名参数类型必须为“字符串”或“数字” 我本以为我
export interface ICardinalityConfig<T> {
[key: Extract<keyof T, string>]: [number, number] | number | true;
}
导出接口ICardinalityConfig{
[key:Extract]:[number,number]| number | true;
}
但是我在键上得到一个错误:
索引签名参数类型必须为“字符串”或“数字”
我本以为我的摘录<…,string>
会确保满足该条件。如何实现这一目标?目前(2018年6月)似乎还不可能实现这一目标。也无法将索引签名表示为泛型类型
您的案例只能使用字符串或数字关键字
2016年开业,至今仍在营业哇,这太令人惊讶/失望了。好吧,我现在就用我的老式的IDictionary
界面,并一直希望在某个阶段能解决这个问题。使用类型
是否是您特定案例的一个选项?因为您可以使用[key in keyof T]
。只是好奇<代码>导出类型CardinalityConfig={[key in keyof T]:[number,number]| number | true}代码>实际上是的,我可以使用类型
;想知道为什么这是可能的,但不是接口?