2016-04-01 33 views
0

Twitter'dan tweet'leri almaya çalışıyorum ve ardından bu tweet'lerden gelen hashtag'leri alıp Flickr'dan görüntü aldım.Gözlemlenebilir abonelik için değişken başvurusu nasıl geçilir

Tweetlerin ve görüntülerin birlikte birleştirilmesini istiyorum. Ancak, sonunda konsol günlüklerine bakın. İlkinin geçerli tweet'i çıkarmasını bekliyorum ve ikincisi bu tweet için çekilen görüntüleri çıkartacak. Bununla birlikte, console.log(tweets[i])console.log(tweets[i]) her zaman listedeki son tweet'i yazdırırken, console.log(results) geçerli sonuçları yazdıracaktır (yani, her bir flickr sonucu yazdırılır). Bu arada, tweetler ve hareketler şimdilik bir json dosyasından alınıyor.

tweets$.subscribe((tweets) => { 
      for (var i in tweets) { 
       var hashtags = tweets[i].entities.hashtags; 
       for (var j in hashtags) { 
        var flicks$ = this.flickrService.getImagesMock(hashtag[j]); 
        flicks$.subscribe((results) => { 
         console.log(tweets[i]); 
         console.log(results); 
        }); 
       } 
      } 
     }); 

Benim soru, nasıl abonelik oluşturulduğunda kullanımda olan i başvurmak için $flicks.subscribe yılında tweets[i] alabilirim edilir?

cevap

1

Bu, async js kapsamı ile ilgili klasik bir sorun olduğunu düşünüyorum. Temel olarak, örneğin iç içe geçmiş olan abone, ilk döngü zaten bittikten sonra yürütülür.

İlgili konular