Typescript: index signature is missing in type when extending interface
问题
定义:
interface IData {
id: string;
[key: string]: string | number;
}
function Foo<Data extends IData>{
}
调用时:
interface Data {
name: string;
mapFileName: string;
mapFilePath: string;
}
Foo<Data>();
报错:Typescript: index signature is missing in type when extending interface(类型Data中没有索引签名)
解决办法
定义Data时要增加类型约束 extends IData
interface Data extends IData {
name: string;
mapFileName: string;
mapFilePath: string;
}
网友评论