Как перенаправить на другую страницу после успешного входа в angularjs?
Привет я разрабатываю одно приложение в Angularjs в качестве внешнего интерфейса и веб-API2 в качестве внутреннего интерфейса. Я новичок в угловых и веб-API. Я заполнил страницу входа в angularjs. Как только мой вход в систему будет успешным, я захочу перейти на страницу Index.cshtml, расположенную в Views/Home/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, но он не работает. Могу ли я получить помощь здесь? Любая помощь будет оценена. Спасибо.
4 ответа
Попробуй это,
$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");
You should redirect correctly.
Вам нужно использовать $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');
});