成功登录angularjs后如何重定向到其他页面?

时间:2017-02-07 08:59:38

标签: angularjs angular-route-segment

您好我正在开发一个应用程序在angularjs作为前端和web api2作为后端。我是角度和网络api的新手。我在angularjs中完成了登录页面。一旦我的登录成功,我想转到位于Views / Home / index.cshtml的名为Index.cshtml的页面。我正在尝试如下。

这是我的控制器代码。

const date = new Date();
const time = date.toTimeString().split(' ')[0].split(':');
console.log(time[0] + ':' + time[1])

这是我的module.js

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) {
            })
        };
});

service.js

var app;
(function () {
    app = angular.module("Login", []);
})();

我正在尝试使用window.location但它无法正常工作。我可以在这里得到一些帮助吗?任何帮助,将不胜感激。谢谢。

4 个答案:

答案 0 :(得分:2)

您可以使用$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) {
            })
        };

});

答案 1 :(得分:1)

试试这个,

 $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) {
            })
        };
});

答案 2 :(得分:0)

尝试改变这一点:

window.location = url;

在此:

window.open("http://www.example.com","_self");

您应该正确重定向。

答案 3 :(得分:0)

您需要使用$ state.go('/ home');

例如:

tick