数据是一个类型对象的数组..。
{
id: 1,
name: 'test'
},
{
id: 2,
name: 'test 2'
}
在对数据执行element.id时,如何访问forEach?在下面的示例中,它不喜欢element.id。它说在类型对象上不存在属性'id‘。
// Need to make sure this code completes
data.forEach(element => {
this.myservice.delete(element.id).subscribe();
});
发布于 2018-06-26 08:47:27
给它一种any
data.forEach(element => {
this.myservice.delete((element as any).id).subscribe();
});
发布于 2018-06-26 08:30:11
若要键入结构不完全已知或希望以不安全的方式访问对象的对象,应使用any
。
declare var data: any[];
data.forEach(element => {
this.myservice.delete(element.id).subscribe();
});
但是,在这种情况下,结构是已知的,并且非常简单,我实际上使用了一个适当的类型:
declare var data: Array<{ id: number, name: string}>;
data.forEach(element => {
this.myservice.delete(element.id).subscribe();
});
https://stackoverflow.com/questions/51047458
复制相似问题