Я пытаюсь бросить мода входа, когда пользователь пытается изменить свое состояние на приложение.
Служба loginService вызывается, когда состояние изменяется на приложение. Код входит в сервис и переходит в бесконечный цикл из stateChange. (Предупреждения «в запуске» и «в службе» выполняются бесконечно) после остановки предупреждений вручную модально также запускается бесконечно.
stateChange происходит снова и снова, это то, что я чувствую.
Заранее благодарим любого, кто помогает. Я совершенно новый для angularjs, и я просто пробовал эти вещи. Ссылка на шлепнуть является: http://plnkr.co/edit/7b16Df1d8ubDBuu2qXg3
app.run(function($state,$rootScope,loginService){
$rootScope.$on('$stateChangeStart',function(event,toState,toParams){
if(toState.name==='app'){
event.preventDefault();
alert('in run');
if(loginService.openModal()){
$state.go(toState.name);
return;
}
else
{
$state.go('welcome');
}
}
});
});
app.factory('loginService',['$modal',function($modal){
return{
openModal:function(){
alert("in service");
var modalLoginInstance=$modal.open({
// template:alert('in modal instance'),
templateUrl:'loginModalTemplate.html',
controller:'modalInstanceCTRL'
});
return modalLoginInstance.result.then(function(){alert('in success');return true},function(){alert('in failure');return false});
}
};
}]);
Я предлагаю вам попытаться уменьшить это вплоть до самого маленького примера, который воссоздает эти симптомы. – thecoshman