【发布时间】:2017-11-06 03:48:52
【问题描述】:
我正在尝试获取当前用户的活动作业列表:
jobListRef$: Observable<Job[]>;
...
this.afAuth.authState.take(1).subscribe(data => {
if (data && data.uid) {
this.jobListRef$ = this.database.list<Job>('job-list', query => {
return query.orderByChild("state").equalTo("active");
})
.snapshotChanges().map(jobs => {
return jobs.map(job => {
const $key = job.payload.key;
const data = { $key, ...job.payload.val() };
return data as Job;
});
})
.filter(val =>
val.map(job => {
return (job.employer == data.uid || job.employee == data.uid);
})
);
}
});
问题仅从过滤开始。根据官方文档,其参数的正确部分应该返回布尔值,就像我的情况一样。但它仍然会返回整个条目而不过滤它们。
【问题讨论】:
标签: javascript firebase firebase-realtime-database rxjs angularfire2