【发布时间】:2021-11-27 10:56:12
【问题描述】:
我对 TS 很陌生...我有这种特殊的类型:
export type MyType = {
high: {
age: number;
preview: [{ [key: string]: string | number }];
};
low: {
age: number;
preview: [{ [key: string]: string | number }];
};
medium: {
age: number;
preview: [{ [key: string]: string | number }];
};
};
我通过我的数据对象键映射:
{Object.keys(data)
.map((item: string, key: number) => {
return (
data &&
data[item]?.preview && (
< component here >
)
);
})}
数据类型正确,但 TS 报错“data[item]?.preview”。
上面写着:
元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引类型“MyType”。 在“MyType”类型上找不到带有“string”类型参数的索引签名。
谢谢
【问题讨论】:
标签: javascript typescript