首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >InvalidPipeArgument:‘[对象对象],[对象对象],

InvalidPipeArgument:‘[对象对象],[对象对象],
EN

Stack Overflow用户
提问于 2017-10-19 17:01:07
回答 1查看 328关注 0票数 1

我试图通过异步管道将服务数据加载到ngfor中,但我面临一个问题:这是我的组件:

代码语言:javascript
复制
    <app-book-list *ngFor="let app of apps | async | serachBox:searchBooksByName | filterSearch:showTechBooks:showMgmBooks:showFictionBooks " 
  [bookdetails]="app"></app-book-list>

在这个组件中,应用程序应该来自服务。

在component.ts文件中:

代码语言:javascript
复制
     public apps= [];
  ngOnInit() {
    this.ServerService.getBookDetails()
      .then((data)=>{
        this.apps = data;
      })
  }

下面是承诺:

getBookDetails(){

代码语言:javascript
复制
let promise = new Promise((resolve,reject)=>{
   return this.http.get('https://lib-http-ng.firebaseio.com/bookdetails.json')
        .toPromise()
        .then((res)=>{
            const data = Object.values(res.json());
            resolve(data[0])
        })

})
return promise;

}我收到一个与异步管道相关的错误。

1.

代码语言:javascript
复制
  Type '{}' is not assignable to type 'Promise<any>'.
EN

回答 1

Stack Overflow用户

发布于 2017-10-19 17:08:21

代码语言:javascript
复制
this.ServerService.getBookDetails()
  .then((data)=>{
    console.log(data);
    this.apps =  data;
  })

应该是

代码语言:javascript
复制
this.apps = this.ServerService.getBookDetails()

或删除| async

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46826244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档