我有一个Observable从Firebase获取一些数据(使用AngularFire2),类似这样(我不需要更改流,只需要最后一个):
this.items = this.af.database.list('/items').take(1);
然后(在数据到达时通常调用的另一个函数中)我想处理结果,例如:
this.items.last().do(items => {
console.log('items from server',items);
});
但是这不起作用(它不会在控制台日志中产生任何结果)。
如何使用Observable的最新结果?
答案 0 :(得分:3)
您的observable很冷(没有订阅),您需要添加一个:
this.items.last().do(items => {
console.log('items from server',items);
}).subscribe();
甚至更好,将do
替换为subscribe
答案 1 :(得分:0)
您必须订阅您的观察。此外,你的take(1)只会获取第一项。我假设你的“/ items”中有多个项目。
Here是关于可观察操作如何运作的绝佳网站。