Я намагаюся показати або приховати індикатор завантаження на кнопці, коли запит зайнятий. Я роблю це з angular, змінюючи змінну $ scope.loading, коли запит завантажується або коли завантаження закінчується.
$scope.login = function(){
$scope.loading = true;
apiFactory.getToken()
.success(function(data){
})
.error(function(error){
})
.finally(function(){
$timeout(function() {
$scope.loading = false;
}, 0);
});
};
У фронтенді:
<button ng-disabled="loading" class="button button-outline button-positive" type="submit">
Log in
<span ng-if="loading" class="ion-refreshing"></span>
</button>
Це працює нормально, але піктограма завантаження (оновлення іонів) відображається приблизно протягом 2 секунд, тоді як змінна $ scope негайно оновлюється. Я спробував $ scope. $ Apply, але, схоже, це не те, що тут не так, область оновлюється чудово і відразу після запиту. Це просто значок, який реагує недостатньо швидко.
Дякую, що допомогли мені це зрозуміти!