when our angularJs app handling an unknown $state name,
it'll refer to $urlRouterProvider.otherwise("/"); which have to be written inside "config()".
assuming your angular app is declared as below:
var app = angular.module([]);
app.config(['$urlRouterProvider', function($urlRouterProvider) {
$urlRouterProvider.otherwise(function($injector, $location) {
var AuthService= $injector.get("AuthService");
if (AuthService.isLoggedIn()) {
return "main";
} else {
return "login";
}
});
}]);
this allow your otherwise become dynamic depend on the login status of a user.
In the code above,
AuthService is an example authentication service to help determine if a user is logged in.