2016-07-29 7 views
0

현재 세션을 로그 아웃했습니다. 그러나 로그 아웃이 작동하지 않습니다. 내 코드 아래 확인 :AngularJS 로그 아웃이 작동하지 않습니다.

보기

<a ui-sref="logout"> 
    <i class="fa fa-sign-out"></i> Log out 
</a> 

config.js

$stateProvider 
      .state('logout', { 
       url: "/logout", 
       templateUrl: '', 
       controller: "LogoutController" 
      }); 

controllers.js

function LogoutController($location, $http) { 
    alert("hi"); 
    //Session.clear(); 
    var request = $http({ 
     method: "post", 
     url: "users/ajaxLogout", 
     dataType: 'json', 
     headers: {'Content-Type': 'application/x-www-form-urlencoded'} 
    }); 
    request.success(function(data) { 

    }); 
    $location.path('/login'); 
} 

angular 
    .module('inspinia') 
    .controller('MainCtrl', MainCtrl) 
    .controller('LogoutController', LogoutController); 

I LogoutController에 경고했지만 해당 기능을 호출하지 않는 동안 Log out 링크를 클릭하고 있습니다.

나는이 링크를 따라 - Angular - Logout redirect route 내 코드에서 오류가 어디 있는지 확인하고 알려주십시오. 콘솔

+1

** [mcve] **를 참조하십시오. 정확히 작동하지 않는 부분을 설명하십시오. – Tushar

+0

여기에 무슨 문제가 있습니까? –

+0

콘솔에 오류가 있습니까? –

답변

2

는 컨트롤러에서 함수 내에서 로그 아웃 코드를 삽입하려고하고 있습니다 : 로그 아웃 링크를 클릭에 함수를 호출 한 후

function LogoutController($location, $http, $scope) { 

    this.logout = function() { 
     alert("hi"); 
     //Session.clear(); 
     var request = $http({ 
      method: "post", 
      url: "users/ajaxLogout", 
      dataType: 'json', 
      headers: {'Content-Type': 'application/x-www-form-urlencoded'} 
     }); 
     request.success(function(data) { 
      $location.path('/login'); 
     }); 

    } 
} 

그리고 클릭하여 사용 :

<div ng-controller="LogoutController as ctrl"> 
<a ui-sref="logout"> 
    <i class="fa fa-sign-out" ng-click="ctrl.logout()"></i> Log out 
</a> 
</div> 
+0

코드가 작동 중입니다. 하지만 다른 오류가 나타납니다. 로그인 페이지가 자동으로 로그 아웃 한 후 로그 아웃 링크를 클릭하지 마십시오. :( – Chinmay235

+0

$ stateProvider가 로그 아웃 기능을 위해 필요한지 확실하지 않으므로 오류가 발생하는지 확인하십시오. 또한 업데이트 된 코드를 참조하십시오. "$ location.path ('/ login');을"request "아래에 넣었습니다. sucess() "함수 – Rishabh

+1

예 괜찮습니다. 고마워요. – Chinmay235

-1

검사는 당신의 오류를 얻고

angular .controller('LogoutController', function($scope,$state,$location,$ionicHistory, $http) { 
    console.log("hello"); 
    $state.go('app.login'); 
    $ionicHistory.clearCache(); 
    }; 
+0

답을 적어 둡니다. – Anuj

관련 문제