geri almak. Belirli verileri kontrol etmek istiyorum ve Firebase bu verileri aldıktan sonra, sadece belirli kapsamında olup Firebase için ameliyattan sonra kontrol edebilirsiniz. Neden oluyor? o kadar subscribe
kod verileri almak ne zaman this.af.database.list
çalıştırır asenkron var this.af.database.list
çünküAngularFire2 erişim verileri sonra AngularFire2 ile benim Firebase veri almaya çalışıyorum
this.af.database.list('/users/1qfcMAQnglX9jsW5GdLpPko1HqE2', { preserveSnapshot: true})
.subscribe(snapshots=>{
snapshots.forEach(snapshot => {
if(snapshot.key=="reg_boolean"){
console.log(snapshot.val());
this.bo=snapshot.val();
}
this.currentUser.push({key:snapshot.key,value:snapshot.val()});
console.log(this.currentUser);
//console.log(snapshot.key, snapshot.val());
if(this.bo==true){console.log("happy"); }; //i can access only in this scope
});
})
if(this.bo==true){console.log("happy"); }; //why i can access this value??it's undefined, this happen before the subscribe with angularfire2
Victor'un cevabı açıklıyor, ama aynı zamanda bu referans soruları için sevk: [? Ben bir zaman uyumsuz çağrısından yanıtı dönmek nasıl] (http://stackoverflow.com/q/14220321 /), (http://stackoverflow.com/q/1739800) ve [Değişkenler $ .GetJSON yalnızca erişilebilir fonksiyonu içinde işlevi sırasında set] [jQuery: ajax çağrı başarıdan sonra Dönüş veri] (http://stackoverflow.com/1/5316697). –