У меня возникла эта странная проблема с директивой $ ionicLoading. Я пытаюсь показать загрузчик при каждом изменении состояния.
.run(['$rootScope','$ionicLoading', function ($rootScope, $ionicLoading){
$rootScope.$on('loading:show', function() {
$rootScope.loading = $ionicLoading.show({
template: '<ion-spinner icon="android"></ion-spinner>',
delay: 1
}).then(function(){
console.log('showing loader');
}, function(error){
console.log('something is breaking');
});
});
$rootScope.$on('loading:hide', function() {
$ionicLoading.hide();
});
$rootScope.$on('$stateChangeStart', function() {
console.log('please wait...');
$rootScope.$broadcast('loading:show');
});
$rootScope.$on('$stateChangeSuccess', function() {
console.log('done');
$rootScope.$broadcast('loading:hide');
});
}]);
На странице загрузки или на stateChangeStart, $ ionicLoading.show() становится называется, но она возвращается многообещающая ошибки (ошибка: отмененный, что-то ломается становится распечатано) & поэтому Loader не отображается.
Теперь, если я вызываю событие $rootScope.$broadcast('loading:show');
на $stateChangeSuccess
, после события hide, появляется загрузчик. (Я узнал об этом, просто играя).
Любая помощь приветствуется.
Я не его отличается от того, что я сделал. Во всяком случае, это тоже не работает. $ IonicLoading.show(); возвращает обещание как ошибка. – amarmishra
Какое обещание оно возвращает как ошибку? Это ни в коем случае не отличается от того, что вы сделали, просто проще, и я уже использовал и тестировал его. – mcrvaz
Ошибка возврата по обещанию: 'cancel' – amarmishra