Ответ 1
У вас может быть базовое состояние, которое контролирует, какое состояние загружаться, и вы можете просто указать, что у ребенка, указанного в этом базовом состоянии, нет URL-адресов:
.state('home', {
url: "/home",
templateUrl: "....",
controller: function($scope,$state,authSvc) {
if(authSvc.userIsLoggedIn()){
$state.go('home.loggedin')
}else{
$state.go('home.public')
}
}
})
.state('home.public', {
url: "",
templateUrl: "....",
controller: function($scope) {
...........
}
})
.state('home.loggedin', {
url: "",
templateUrl: "....",
controller: function($scope) {
...........
}
})
Теперь в контроллере вашего базового состояния (home
) вы можете проверить, вошел ли пользователь в систему или нет, и используйте $state.go()
для загрузки соответствующего состояния.
ИЗМЕНИТЬ
Как и было обещано, рабочая панель.