Bir istek meşgul olduğunda bir düğmedeki yükleme göstergesini göstermeye veya gizlemeye çalışıyorum. Bunu, bir istek yüklenirken veya yükleme işlemi tamamlandığında $ kapsam.loading değişkenini değiştirerek açısal olarak yaparım.
$scope.login = function(){
$scope.loading = true;
apiFactory.getToken()
.success(function(data){
})
.error(function(error){
})
.finally(function(){
$timeout(function() {
$scope.loading = false;
}, 0);
});
};
Ön uçta:
<button ng-disabled="loading" class="button button-outline button-positive" type="submit">
Log in
<span ng-if="loading" class="ion-refreshing"></span>
</button>
Bu iyi çalışır, ancak yükleme simgesi (iyon yenileme) yaklaşık 2 saniye gösterilirken, $ kapsam değişkeni hemen güncellenir. $ Kapsam. $ Apply'ı denedim ama burada yanlış olan şey bu değil, kapsam gayet iyi ve istekten hemen sonra güncelleniyor. Yeterince hızlı yanıt vermeyen yalnızca simge.
Bunu anlamama yardım ettiğin için teşekkürler!