2016-07-13 13 views
3

Ich habe den folgenden Code.Angular2: Return Observable in Versprechen

Ich weiß, dass ich Sync-Wert nicht aus Versprechen zurückgeben kann, aber beobachtbar sind Async. Die Rückkehr dieser Funktion ist vom Typ Promise<Observable< > >

Ich möchte nur wissen, wie man diese beobachtbar zu abonnieren, im Moment habe ich versucht habe dies:

loadCategory(){ 
    this.questionDBService.getListCategoryOfQuestion() 
     .subscribe(data => { 
      this.categories = data; 
      console.log(data); 
     }); 
} 

Aber natürlich funktioniert es nicht, weil das Ergebnis nicht beobachtbar, also weiß jemand wie man dieses Problem bewältigt?

Antwort

3

Ein Versprechen mit beobachtbaren ... das ist schön :) versuchen Sie dies:

loadCategory(){ 
    this.questionDBService.getListCategoryOfQuestion().then((observer) => { 

     observer.subscribe((data) => { 
      this.categories = data; 
      console.log(data); 
     }); 

    }); 

} 
+0

Vielen Dank, so logisch, wenn Sie mir die Antworten geben ahah. Gibt es einen besseren Weg, dies zu tun, ohne ein Versprechen zu setzen? : p –

Verwandte Themen