在 Angular 7 中使用地图模块获取 firebase 数据错误 "property rate does not exist of type {}"
in Angular 7 firebase data fetching with map module error "property rate does not exist of type {}"
我的数据库获取方法有一个关于评级的条件。
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 数据库,
topRadBook 是获取评分超过 4 的书籍列表。
\\
错误是:
属性 速率不存在类型 {}
尝试这样的事情:
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 本身。但是请记住,你 return 是一个 Observable,所以你仍然必须像这样显示它:
<div *ngFor='let top of (topRanked |async)'>
{{top.name}}
</div
我的数据库获取方法有一个关于评级的条件。
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 数据库, topRadBook 是获取评分超过 4 的书籍列表。 \\ 错误是: 属性 速率不存在类型 {}
尝试这样的事情:
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 本身。但是请记住,你 return 是一个 Observable,所以你仍然必须像这样显示它:
<div *ngFor='let top of (topRanked |async)'>
{{top.name}}
</div