【问题标题】:Angular 5 Contentful API in console but not view控制台中的 Angular 5 Contentful API 但未查看
【发布时间】:2018-05-16 03:40:03
【问题描述】:

我正在尝试为我的投资组合创建一个简单的 Contentful API。我正在使用 Angular 5、Contentful 和 Firebase。我知道我正在成功检索数据,因为我可以在控制台中看到它,但是,当我尝试异步管道输入时,我的视图没有得到它。

我的服务方式:

我的组件使用方法:

控制台中的数据:

我视图中的数据(未显示):

我认为我没有正确地履行承诺(我对 Angular 还很陌生)。最糟糕的是,我没有收到任何错误,所以我不确定要调试什么!

有什么建议吗?

【问题讨论】:

    标签: angular api firebase portfolio contentful


    【解决方案1】:

    你需要对你的promise 做一个小改动,以便entries 可以被后续的promise 捕获。确保您从您的then() 返回entries

    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>
    

    【讨论】:

    • 这有帮助...我想我还有更多关于 Angular 的知识。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2013-10-28
    • 2018-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多