我使用firebase作为我的后端。
在data.service.ts中,我创建了一个Subject数组,它将由app init上的firebase观察者填充:
private orders = new Subject<any>();
orders$ = this.orders.asObservable();
firebase.database().ref(this.fbDataPath).on('child_added', (childSnapshot) => {
this.orders.next(
{
key: childSnapshot.key,
name: childSnapshot.val().name,
items: childSnapshot.val().items
}
)
})
然后,我使用DataService提供一个单独的目录组件,并订阅其可观察的订单:
DataService.orders$.subscribe(
order => {
console.log('subscribe hit')
})
我似乎无法让侦听器组件在下一个触发器上触发。我为布尔值isLoggedIn做了这个工作,我必须在这个场景中遗漏一些东西。谢谢!
答案 0 :(得分:1)
可能是因为您在关闭中使用了this
。从this
this.orders.next()