我的应用程序当然是一个默认状态,当你点击它时它会显示。我希望可能绕过默认状态并导航到另一个状态(代表一个功能),基于属性的存在(我认为将从服务中读取)。我不确定如何处理这个问题。有一些执行点或某些事件,我可以挂钩将用户从默认值重定向?
答案 0 :(得分:1)
在运行块中,您可以为$ routeChangeSuccess或$ stateChangeSuccess注册一个监听器,具体取决于您是否使用ngRoute或ui-router。一般语法如下:
angular.module('myApp',[]).run(function($rootScope, $state, myService){
$rootScope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams){
if(myService.someValue && toState == 'defaultStateName')
$state.go('otherState');
})
});
答案 1 :(得分:0)
我现在有一些似乎想要的东西我需要相当简单。由于我在服务上拥有自己的属性,因此我可以将该服务注入控制器以获取默认内容状态。在控制器中,我可以查看酒店并致电' $ state.go'如果必须的话。