Saya mencoba untuk menampilkan atau menyembunyikan indikator pemuatan pada tombol ketika permintaan sedang sibuk. Saya melakukan itu dengan sudut dengan mengubah variabel $ scope.loading ketika permintaan sedang dimuat atau ketika selesai memuat.
$scope.login = function(){
$scope.loading = true;
apiFactory.getToken()
.success(function(data){
})
.error(function(error){
})
.finally(function(){
$timeout(function() {
$scope.loading = false;
}, 0);
});
};
Di bagian depan:
<button ng-disabled="loading" class="button button-outline button-positive" type="submit">
Log in
<span ng-if="loading" class="ion-refreshing"></span>
</button>
Ini berfungsi dengan baik, tetapi ikon pemuatan (ion-refreshing) ditampilkan selama sekitar 2 detik, sedangkan variabel $ scope diperbarui segera. Saya mencoba $ scope. $ Apply tetapi sepertinya bukan itu yang salah di sini, scope diperbarui dengan baik dan segera setelah permintaan. Hanya ikonnya yang tidak merespons dengan cukup cepat.
Terima kasih telah membantu saya memahami ini!