我正在尝试为我的投资组合提供一个简单的Contentful API。我正在使用Angular 5,Contentful和Firebase。我知道我正在成功检索数据,因为我可以在控制台中看到它,但是,当我尝试异步管道时,我的视图没有得到它。
我的服务方式:
我的组件使用方法:
控制台中的数据:
我视图中的数据(未显示):
我认为我没有正确地做出承诺(我对Angular很新)。最糟糕的是,我没有收到任何错误,所以我不确定要调试什么!
有什么建议吗?
答案 0 :(得分:1)
您需要对promise
进行一些小改动,以便随后的承诺可以捕获entries
。确保从entries
:
then()
getProjects() {
const promise = this.client.getEntries({
'content-type': 'project'
})
.then(function(entries) {
entries.items.forEach(function(entry) {
console.log(entry);
});
return entries; // make sure you return entries
});
return Observable.fromPromise(promise);
}
此外,在您的模板中,您似乎试图迭代projects
而不是projects.items
。此修复需要对模板进行少量修改:
<div *ngFor="let project of projects.items">
{{ project | json }}
</div>