登录详细信息不在localStorage中

时间:2016-09-14 06:41:21

标签: javascript html angularjs

我正在制作一个测试Web应用程序,我正在尝试将我的用户详细信息存储在本地存储中但有些如何,它不存储在本地存储中,这反过来使我的登录失败或可能有任何其他原因。我没有在控制台中收到任何错误,当我注册数据时也会进入我的数据库。

我的控制器代码:

        `(function(){
    angular.module('Test')
    .controller('loginController',["$scope","$state","$http",  function($scope, $state, $http){
        if(localStorage['User-Data']) {
            $scope.loggedIn = true;
        }
        else {
            $scope.loggedIn = false;`}

$scope.logUserIn = function() {
   $http.post('api/users/login', $scope.login).success(function(response){
       localStorage.setItem('User-Data', JSON.stringify(response));
       $scope.loggedIn = true;
   }).error(function(err){
       console.log(err);
   });
};

$scope.logOut = function() {
    localStorage.clear();
    $scope.loggedIn = false;
}
}]);
})();

我的Html如下:

<nav class="nav navbar-default navbar-fixed-top" ng-controller="loginController">
<div class="container-fluid">
<div ng-show=!loggedIn>
<strong> Email: </strong> <input type="text ng-model="login.email">
<strong> Password: </strong> <input type="password" ng-model="login.password">
<button ng-click="logUserIn()"> Login </button> <a ui-sref="signUp"> Create an Account </a> 
</div>

<div ng-show="loggedIn">
   <a ui-sref="editProfile"> Edit Profile  </a>
  <a ui-sref="logOut()"> Logout </a>
</div>
</div>    
</nav>
<body>
<div ui-view> </div>
</body>

问题不在于任何语法错误或缺少目录。请查看此代码并帮助我。

2 个答案:

答案 0 :(得分:0)

尝试使用

JSON.parse(localStorage.getItem('User-Data'))

答案 1 :(得分:0)

更改您的代码
   localStorage.setItem('User-Data', JSON.stringify(response));

   localStorage.setItem('User-Data', JSON.stringify(JSON.parse(response)));