我松散地遵循了Angular教程,并试图从网络服务器接收数据,这很好。但是在调用Component中,我没有收到任何数据。我仔细检查了我的代码并与教程进行了比较,从我的观点来看,一切都应该没问题。 我没有收到错误,可以在控制台中看到数据,但我没有出现在组件中。任何人都可以解释为什么我没有收到数据?
这是服务功能:
getProjects(): Promise<Project[]> {
return this.http.get(this.apiURL)
.toPromise()
.then(response => {
console.log(response.json());
response.json() as Project[]
})
.catch(this.handleError);
}
这是我的组件:
export class FrontpageComponent implements OnInit {
projects: Project[] = [];
constructor (private projectService: ProjectService) {}
ngOnInit(): void {
this.projectService.getProjects()
.then(projects => {
this.projects = projects;
console.log(projects);
});
}
}
我的项目模型目前只是:
export class Project {
dmResponse: Object;
}
答案 0 :(得分:1)
在服务,您应该返回值:
<receiver
android:name=".LocalTokenRequestReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="@string/local_token_request" />
<category android:name="@string/broadcast_category" />
</intent-filter>
</receiver>
此隐式箭头函数返回仅在语句没有花括号时才有效。即:
.then(response => {
console.log(response.json());
return response.json() as Project[];
})