typescript - Firebase e RxJS


Eu criei uma função que escuta eventos de valor:

getUnreadMessages() : Observable<any>{
    return new Observable(observer =>{
      firebase.database().ref('messages/' + this.userService.getUserID()).on("value", (snapshot : any) =>{

        let count = 0;
        ...some more logic here...

        observer.next(count);
        observer.complete();

      }, (error) =>{
        observer.error(error);
      })
    })
  }

Quando a base de dados muda, consigo ver que esta função é chamada, no entanto, os locais onde me inscrevo nela por toda a aplicação não são acionados. Alguma sugestão?

Resposta #1

Marcar o observável como completo foi a causa do problema.