它可能有些愚蠢的东西,但我无法很快解决。
我使用SwaggerService返回数据,但未定义。
import {SwaggerService} from '../../services/swagger.service';
export class TestComponent implement OnInit {
public mydata:Object;
constructor(public readonly service: SwaggerService)
{
this.service = this.service['GetData'].get().subscribe(
data=>{
this.mydata['data']=data;
},
error=>console.error(error)
);
}
}
事情是data
返回一个包含详细值的数组。但是this.mydata['data']
返回一个数组,但是没有数据,它是未定义的。
该服务来自.net控制器。我确定有数据,并在chrome调试器中进行了验证。
我必须做一些映射吗?
答案 0 :(得分:1)
这里的问题是您尚未初始化mydata
变量。您已将mydata
声明为Object
,但在为其分配值之前,其初始值为undefined
。
尝试将mydata
初始化为空对象。那应该可以解决您的问题。
编辑:如评论中提到的@Narm以及她提供的链接所示,请使用非原始object
类型而不是Object
public mydata: object = {};