【发布时间】:2018-07-08 05:51:41
【问题描述】:
我将 RXJS 操作符与 firebase observable(distinct 和 filter)一起使用。 这是我的火力基地树 here。 这是我的代码:
let places this.db.list(`users/${this.authProvider.getUID()}/visitedPlaces`,{
query:{
orderByChild:"googleId"
}
});
places.distinct((p)=>{
console.log(p)
return p.googleId;
}).
subscribe((snap)=>{
console.log(JSON.stringify(snap,null,2))
},(err)=>{
console.log(JSON.stringify(err,null,2))
},()=>{
console.log("completed");
});
我正在尝试根据 googleId 区分 firebase 数据。 我没有收到任何错误,但不同的列表不起作用。
对此有何帮助或理由?谢谢。
【问题讨论】:
-
你能定义“不工作”吗?怎么了?您的任何
console.log语句是否正在执行? -
两个日志都返回一个列表。但是,它们并没有区别。
-
能否显示
console.log(p)和console.log(JSON.stringify(snap,null,2))的输出。 -
`[ { "纬度": 33.87628190799748, "经度": 35.53945333505702, "_isCurr": false, "googleId": "" }, {...},{...}.. .] 这个日志对于两者都是一样的
-
日志应该是
places中每个项目的单个日志条目。听起来您是通过distinct运算符发送整个数组,而不是一次发送一个元素。
标签: angular typescript firebase firebase-realtime-database rxjs