2016-04-14 48 views
0

Çocuklar AngularJS'de koşullu veya dinamik gecikmeler yapmak istiyorum. Bence durum değil daha bekler daha karşılıyorsa aşağıdaki gibi dinamik hale getirmek için timeout, İstediğim şey olduğunu kullanarak zaman gecikmeleri sabit biliyorum:AngualrJS Koşullu veya Dinamik Gecikmeler

var time =500; 
$timeout(function(){ 
       if(success==false){ 
         time =5000; 
        } 
       },time); 

SO durum değil o karşılıyorsa artar geciktirir. Aslında veri yüklenmesini beklemek istiyorum.

cevap

0

$ zaman aşımını kullanmak (veya setTimeout, açısal olursa olsun), gecikmeli yürütme için hemen geri çağırma işlevini kaydeder ve bu nedenle, geri aramadaki "zaman" değişkeninin değerini değiştirmek, gerçek gecikmeyi etkilemez.

Yüklemek veri bekliyorsan, size $ q hizmetini kullanabilirsiniz açısal içinde kullanarak sözler gibi diğer seçenekler var - https://docs.angularjs.org/api/ng/service/ $ q ve veriler bir kez sözünü çözmek

Başka UI yönlendiricisi kullanıyorsanız, durum değiştirilmeden önce verilerin yüklendiğinden emin olmak için bir durumun "çözümleme" özelliğini kullanmaktır.