Я бы порекомендовал использовать angular-loading-bar: этот плагин показывает анимацию загрузки, блокируя каждый ввод / действие для пользователя до завершения загрузки.
Вот пример:
var promise = BackendService.getData();
//start the loading animation
cfpLoadingBar.start();
promise.then(
function (data) {
//when the server responds, stop the animation
cfpLoadingBar.complete();
}
},
function (err) {
cfpLoadingBar.complete();
$log.error(err);
}
);
}
cfpLoadingBar должен быть введен в контроллер.
Это будет блокировать ваше приложение, пока ответ сервера не будет обработан.