2016-09-15 2 views
0

Je n'arrive pas à comprendre comment résoudre le problème suivant.Population avec requêtes incorporées RxJs

Il y a un type d'objet:

Box { 
    Fruit[n]: { 
     Kinds[n]: { 
     id: string; 
     name: string; 
     } 
    } 
} 

Je suis la boîte de fuits à partir d'un appel API comme Observable (Angular2) [Fruit []] alors je veux remplir sa "propriété de navigation" avec un autre API appel ce qui rend une observable ainsi comme:

Box.foreach(fruits => 
     fruits.foreach(f => 
      f.kinds.foreach(k => 
       k.name = kindservice.getKindName(k.id) // <- observer 
    ))) 

Comment puis-je le faire avec RxJs?

J'ai essayé de nombreuses façons, il y a beaucoup de mappeurs mais je n'ai pas encore trouvé de solution. J'ai aussi utilisé l'Observable.fr (..) mais il n'y avait pas de chance.

Merci

Répondre

2

Votre boucle la plus intérieure a 2 problèmes:

  1. Vous assignez un observateur à une valeur.
  2. Votre observateur reste froid.

Essayez de changer à:

Box.foreach(fruits => 
     fruits.foreach(f => 
      f.kinds.foreach(k => 
       kindservice.getKindName(k.id).subscribe(name => k.name = name) 
    )))