在获得snapshtchanges之后,如果数组具有电子邮件地址(请参阅下面的注释代码),我试图过滤返回数据,但不幸的是,该过滤器不起作用。它将返回firedatabase中的所有记录。
我做错了什么?有没有更好的方法从附加的Firebase数据库获取数据?我的要求是,如果电子邮件在成员列表中,请进入聊天室。
this.lstChats$ = this.chatter.getUserChats()
.snapshotChanges()
.map(changes => {
return changes.map( (c)=>
{
// let cr = c.payload.val();
// let found = false;
// if(cr!=null && cr.members!=null){
// console.log("CRRRR", cr.members);
// cr.members.forEach(element => {
// // console.log("email:", element.email);
// if(element.email=="abc@xyz.com"){
// console.log("Filter", element.email);
// found=true;
// // return { key: c.payload.key, ...c.payload.val() }
// }
// });
// }
// if(found)
return { key: c.payload.key, ...c.payload.val() }
});
});