我正在尝试从Firebase获取具有用户名的值的数据。一周前我尝试了两种不同的方法,但是现在我又回来了,我注意到我已经删除了它。
在home.ts里面,我可以预订数据
this.database.list<EventModels>('event-list').valueChanges().subscribe((eventData) => {
}, (err)=>{
console.log("Error while retrieving event details : ", err);
});
this.eventListRef$ = this.database.list<EventModels>('event-list');
this.eventList$ = this.eventListRef$.snapshotChanges()
.pipe(
map(changes =>
changes.map(c => ({ id: c.payload.key, ...c.payload.val() }))
)
);
我要过滤的数据等于创建者
自从我将创建者设置为用户的电子邮件以来,我只想使用== firebase.auth().currentUser.email
列出所有由用户创建的事件,以及我尝试失败的所有事件。
答案 0 :(得分:0)
来自AngularFire documentation on querying lists:
db.list('/items', ref => ref.orderByChild('size').equalTo('large'))
所以看起来您的应该是这样的:
this.eventListRef$ = this.database.list<EventModels>('event-list',
ref => firebase.database().ref("event-list").orderByChild("email").equalTo(firebase.auth().currentUser.email));