在Angular 2中使用Firebase从多个列表中检索值
Retrieving values from multiple lists with Firebase in Angular 2
我有一个简单的应用程序,列出了一组位置,其中登录用户可以将给定位置标记为"收藏"。
我在firebase中的数据结构包含一个简单的位置列表,如:
=>地点位置id : [] => [{ 名称:"名字"},{名称:"名字2}]
喜欢=>用户标识:[]=>位置id:[] =>{喜欢:真}
我想在我的模板中使用一些简单的逻辑遍历它:
<md-card *ngFor="let location of locations | async">
<md-card-title> {{location.name}}</md-card-title>
<md-card-content>{{location.liked}}</md-card-content>
</mc-card>
在我的组件
中使用以下逻辑 locations: Observable<any[]>;
constructor(
private cardService: CardService,
private router: Router,
public af: AngularFire)
{
this.locations = af.database.list('/trips')
.map((locations) => {
return locations.map((location) => {
location.liked = af.database.object(`/likes/${this.uid}/${location.$key}`);
return location;
})
});
然而,位置。在我看来,喜欢的房产仍然是空的。我检查了/喜欢/${this.uid}/${位置。$key} URL实际上包含所需的数据。
有什么建议吗?
谢谢
因为location.like
是firebase database.object
,它返回FirebaseObjectObservable
对象。要在视图中显示对象值,您应该在它上面使用async
管道
<md-card-content>{{location.liked | async}}</md-card-content>
你可以在AngularFire Docs
相关文章:
- 如何使用Javascript客户端对象模型检索Sharepoint 2010列表项权限
- 如何从类关系中检索对象列表
- 无法使用下拉列表检索表行中的输入值,但可以检索下拉值
- 如何使用 JavaScript 在 for 循环中检索下拉列表中的值
- jQuery从
- 列表中检索一个值
- 无法从动态创建的选择下拉列表中检索值
- 正在检索列表中选定的元素
- 使用JSON检索PHP数组,并使用javascript中的数组来填充播放列表
- 从烧瓶中检索聚合物列表
- 如何将下拉列表中检索到的值的id从数据库发送到php文件
- 如何从下拉列表中由可观察数组填充的选定项中检索完整对象
- 如何使用 JQuery 检索设置了特定类的所有标签的列表,然后从这些标签中删除内容
- 如何通过选择从SQL填充的下拉列表来检索SQL中的值到文本区域使用JavaScript在PHP中
- Html列表:如何计算列表中检索到的参数数
- 检索引导下拉列表选择文本
- 通过ajax(铁-ajax,聚合物)检索mailchimp列表详细信息
- 余烬 js 不更新列表从模板中的模型检索
- 如何使用 AJAX 根据两个下拉列表的值从数据库中检索数据
- 检索具有 REST/Javascript API 的国家/地区的州/省列表
- 检索特定播放列表缩略图时,它不会获取视频的视图和描述