Angular 7 Firebase数据获取时出现地图模块错误“类型{}的属性率不存在”

时间:2018-12-17 17:15:51

标签: firebase firebase-realtime-database angular7

我的数据库获取方法具有一种关于评级的条件。

favoriteBooks: Observable<any>;
geFavoriteBooks() 
{
    this.favoriteBooks = this.db.list('/books').valueChanges().map(
    books => 
        {
           const topRatedBook =<any> books.filter(item => item.rate > 4.0);
           return topRatedBook;
        })
    return this.favoriteBooks;
}

books是我的Firebase数据库, topRatedBook用于获取评分大于4的书籍列表。 \\ 错误是: 不存在类型{}

的财产税

1 个答案:

答案 0 :(得分:0)

尝试这样的事情:

favoriteBooks: Observable<any>;
geFavoriteBooks() 
{
    return this.db.list('/books').valueChanges().pipe(map(
    books => 
        {
           const topRatedBook =<any> books.filter((item: any) => item.rate > 4.0);
           return topRatedBook;
        }
    ));
}

因为您要映射valueChanges-Observable而不是Observable本身的结果。但是请记住,您返回了一个Observable,因此仍然必须像这样显示它:

<div *ngFor='let top of (topRanked |async)'>
  {{top.name}}
</div