我正在尝试从angularFire2 database
获取用户详细信息。因此,我使用FirebaseListObservable
而不是使用FirebaseObjectObservable
,因为我只希望路径中的用户。
这是我导出用户数据的路径和列。
path: /projects/users/
columns: userID,username
data
userID:"001",
username:"Icomin"
这是home.ts
import { Component } from '@angular/core';
import { NavController,AlertController,ActionSheetController } from 'ionic-angular';
import{AngularFireDatabase,FirebaseListObservable,FirebaseObjectObservable} from 'angularfire2/database';
import {Observable} from 'rxjs/Observable';
@Component({
selector: 'my-child-component',
template: `<h1>Welcome {{ (projects | async)}}</h1>` // The template
})
export class HomePage{
projects: FirebaseObjectObservable <any>;
constructor(af:AngularFireDatabase) {
this.projects = af.object(`/projects/users`);
}
我实现了下面的模板,但返回Welcome [object object]
模板实施
template: `<h1>Welcome {{ (projects | async)}}</h1>`
如何从上述路径获取用户详细信息并将其设置为模板
答案 0 :(得分:0)
正如您所提到的,您从项目变量获得Fibers/Future
。这意味着您会收到此来电Welcome [object object]
的列表
我真的不知道你想要用这个清单做什么,但你几乎没有选择:
1 - 显示列表中的所有用户:
af.object('/projects/users')
这将逐个显示所有用户的姓名
2 - 显示特定用户:
(您需要选择过滤条件:userID或用户名)
template: ' <h1 *ngFor="let proj of projects | async">{{ proj.username }}</h1>
然后显示当前用户名的模板:
export class HomePage{
project: FirebaseObjectObservable <any>;
constructor(af:AngularFireDatabase) {
this.project = af.list(`/projects/users`,{
query: {
orderByChild: 'userID', //or orderByChild: 'username',
equalTo: <someUserID> // equalTo: <someUsername>
}
});
}
}
希望它符合您的要求。