angularjs登录成功后如何重定向到其他页面?
How to redirect to other page after successful login in angularjs?
您好,我正在 angularjs 开发一个应用程序作为前端,web api2 作为后端。我对 angular 和网络 api 都是新手。我已经在 angularjs 中完成了登录页面。登录成功后,我想转到位于 Views/Home/index.cshtml 的名为 Index.cshtml 的页面。我正在尝试如下。
这是我的控制器代码。
app.controller('Login', function ($scope, LoginService) {
$scope.Login = function () {
var sub = {
User_Name: $scope.User_Name,
User_Password: $scope.User_Password
};
var checkData = LoginService.Login(sub);
checkData.then(function (data) {
//want redirection
var url = '/Home/Index/';
window.location = url;
}, function (error) {
})
};
});
这是我的module.js
var app;
(function () {
app = angular.module("Login", []);
})();
service.js
app.service("LoginService", function ($http) {
this.Login = function (sub) {
var credentials = { User_Name: sub.User_Name, User_Password: sub.User_Password };
$http.post('api/NCT_UsersLogin/', credentials).success(function (response) { });
}
});
我正在尝试使用 window.location,但它不起作用。我可以在这里得到一些帮助吗?任何帮助,将不胜感激。谢谢。
试试这个,
$window.location.href = '/Home/index.html';
同时将 $window 注入你的控制器
app.controller('Login', function ($scope, LoginService,$window) {
$scope.Login = function () {
var sub = {
User_Name: $scope.User_Name,
User_Password: $scope.User_Password
};
var checkData = LoginService.Login(sub);
checkData.then(function (data) {
//want redirection
$window.location.href = '/Home/index.html';
}, function (error) {
})
};
});
您可以使用$state.go(url)
试试这个
app.controller('Login', function ($scope, LoginService, $state) {
$scope.Login = function () {
var sub = {
User_Name: $scope.User_Name,
User_Password: $scope.User_Password
};
var checkData = LoginService.Login(sub);
checkData.then(function (data) {
//want redirection
var url = '/Home/Index/';
$state.go(url);
}, function (error) {
})
};
});
尝试改变这个:
window.location = url;
在此:
window.open("http://www.example.com","_self");
您应该正确重定向。
您需要使用 $state.go('/home');
例如:
$http.post('api/NCT_UsersLogin/', credentials).success(function (response) {
//if your response status is success then redirect to another page using
$state.go('/home');
});
您好,我正在 angularjs 开发一个应用程序作为前端,web api2 作为后端。我对 angular 和网络 api 都是新手。我已经在 angularjs 中完成了登录页面。登录成功后,我想转到位于 Views/Home/index.cshtml 的名为 Index.cshtml 的页面。我正在尝试如下。
这是我的控制器代码。
app.controller('Login', function ($scope, LoginService) {
$scope.Login = function () {
var sub = {
User_Name: $scope.User_Name,
User_Password: $scope.User_Password
};
var checkData = LoginService.Login(sub);
checkData.then(function (data) {
//want redirection
var url = '/Home/Index/';
window.location = url;
}, function (error) {
})
};
});
这是我的module.js
var app;
(function () {
app = angular.module("Login", []);
})();
service.js
app.service("LoginService", function ($http) {
this.Login = function (sub) {
var credentials = { User_Name: sub.User_Name, User_Password: sub.User_Password };
$http.post('api/NCT_UsersLogin/', credentials).success(function (response) { });
}
});
我正在尝试使用 window.location,但它不起作用。我可以在这里得到一些帮助吗?任何帮助,将不胜感激。谢谢。
试试这个,
$window.location.href = '/Home/index.html';
同时将 $window 注入你的控制器
app.controller('Login', function ($scope, LoginService,$window) {
$scope.Login = function () {
var sub = {
User_Name: $scope.User_Name,
User_Password: $scope.User_Password
};
var checkData = LoginService.Login(sub);
checkData.then(function (data) {
//want redirection
$window.location.href = '/Home/index.html';
}, function (error) {
})
};
});
您可以使用$state.go(url)
试试这个
app.controller('Login', function ($scope, LoginService, $state) {
$scope.Login = function () {
var sub = {
User_Name: $scope.User_Name,
User_Password: $scope.User_Password
};
var checkData = LoginService.Login(sub);
checkData.then(function (data) {
//want redirection
var url = '/Home/Index/';
$state.go(url);
}, function (error) {
})
};
});
尝试改变这个:
window.location = url;
在此:
window.open("http://www.example.com","_self");
您应该正确重定向。
您需要使用 $state.go('/home');
例如:
$http.post('api/NCT_UsersLogin/', credentials).success(function (response) {
//if your response status is success then redirect to another page using
$state.go('/home');
});