将Javascript与Typescript一起使用(v1.4.1)我有一个自定义类型如下:
interface WordDataForQuestion {
question : {
id : number;
vocab : string;
comment : string;
};
possibleAnswers : {
[index : number] : {
id : number;
vocab : string;
comment : string;
}
};
}
现在我想推送数组possibleAnswers
nextWordData.possibleAnswers.push(
{
id : vocabs[index].id,
vocab : vocabs[index].voc_t,
comment : vocabs[index].com_t
}
);
但是它给了我以下错误:
exercise.ts(69,42): error TS2339: Property 'push' does not exist on type '{ [index: number]: { id: number; vocab: string; comment: string; }; }'.
我不明白有什么问题 - possibleAnswers
应该是一个支持push-operation的JavaScript数组。我不对吗?
答案 0 :(得分:3)
你快到了。您确实将其定义为具有索引器的对象。不是数组,请参见下面的示例
possibleAnswers : {
id : number;
vocab : string;
comment : string;
}[];