【发布时间】:2016-11-10 15:41:59
【问题描述】:
我有一个对象,其中所有的键都是字符串,一些值是字符串,其余的都是这种形式的对象:
var object = {
"fixedKey1": "something1",
"fixedKey2": "something2",
"unknownKey1": { 'param1': [1,2,3], 'param2': "some2", 'param3': 'some3'},
"unknownKey2": { 'param1': [1,2,3], 'param2': "some2", 'param3': 'some3'},
"unknownKey3": { 'param1': [1,2,3], 'param2': "some2", 'param3': 'some3'},
...
...
};
在这个对象中fixedKey1 和fixedKey2 是该对象中的已知键。 unknownKey - 值对可以从 1 到 n 变化。
我尝试将对象的接口定义为:
interface IfcObject {
[keys: string]: {
param1: number[];
param2: string;
param3: string;
}
}
但这会引发以下错误:
类型编号的变量不能分配给类型对象
我发现它无法将此接口分配给“fixedKey - value”对。
那么,我该如何对这类变量进行类型检查呢?
【问题讨论】:
标签: typescript