我有一个代表位置树的对象。每个位置可能有子位置(或没有),并且有一个数字ID。
但它显示:
{
id: 0,
USA: {
id: 1,
ARIZONA: {
id: 2,
PHOENIX: {
id: 3
},
TUSCANY: {
id: 4
}
},
ALABAMA: {
id: 4,
}
},
CANADA: {
id: 6,
ONTARIO: {
id: 7,
TORONTO: {
id: 8
},
OTTAWA: {
id: 9
}
},
QUEBEC: {
id: 10,
MONTREAL: {
id: 11
}
},
}
UK: {
id: 12,
LONDON: {
id: 13
}
}
}
我正在尝试将其表示为接口
interface Location {
id: number;
[key in string]?: Location
}
但它不让我这么说:
一个映射类型不能声明属性或方法。ts(7061) 我也试过了。
interface Location {
id: number;
[key:string]: Location
}
但它显示:
属性 id 的类型为数字,无法分配给字符串索引类型 Location