0
我一直在为每个$ http请求和url更改进行身份验证。因此,我已实施了URL变化认证码的和平波纹管如何根据angularjs中的条件从控制器重定向页面?
/** login-controller.js file **/
//when the form is submitted
$scope.submit = function() {
console.log("enter login submit");
$scope.submitted = true;
if (!$scope.loginForm.$invalid) {
$scope.login($scope.credentials);
} else {
$scope.error = true;
$scope.error_des = '';
return;
}
};
// if a session exists for current user (page was refreshed)
// log him in again
if ($window.sessionStorage["userInfo"]) {
var credentials = JSON.parse($window.sessionStorage["userInfo"]);
$scope.login(credentials);
};
//Performs the login function, by sending a request to the server with the Auth service
$scope.login = function(credentials) {
$scope.error = false;
Auth.login(credentials, function(user) {
//success function
$mdDialog.hide();
$state.go("admin-panel.default.home");
}, function(err) {
console.log("error");
$scope.error_des = err.msg;
$scope.error = true;
});
};
一切工作如我所料,但同时reloding在同一页it'l总是重定向到家庭(http://localhost:3000/#/home).i知道它会发生,因为
$state.go("admin-panel.default.home");
麻烦的是,我想根据登录方式重定向页面let'say,如果用户通过提交表单登录,将重定向到$ state.go(“admin-panel.default.home”); 如果用户通过会话登录存在当前用户,将被重定向到$ state.go(“admin-panel.defau lt;“+ $ current_page);
如何实现它?请帮帮我????