AngularJS - 如何在首次提交中进行身份验证?

时间:2016-11-09 11:24:23

标签: angularjs authentication

我在Angularjs中有一个登录功能,它只在我第二次提交时才有效。如何解决?

这是代码:

.controller('LoginCtrl',
['$scope', '$rootScope', '$location', 'AuthenticationService',
function ($scope, $rootScope, $location, AuthenticationService) {
    // reset login status
    AuthenticationService.ClearCredentials();

    $scope.login = function () {
        $scope.dataLoading = true;
        console.log('Entra '+$scope.username);
        AuthenticationService.Login($scope.username, $scope.password, function(response) {
            if(response.success) {
               AuthenticationService.SetCredentials($scope.username, $scope.password, $rootScope.datos.grupo);

                $location.path('/');
                console.log('Comprueba y redirecciona');

            } else {
               console.log('Falla');
               $scope.error = response.message;
               $scope.dataLoading = false;
            }
        });
    };
}]);

1 个答案:

答案 0 :(得分:0)

我需要在更改位置后调用$ scope($ apply()并调用replace()让Angular知道事情已经发生了变化。

谢谢。