2016-09-14 186 views
1

我正在做一个测试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> 

的问题是不是任何语法错误或丢失的目录。请查看此代码并帮助我。

+0

'型= “文本NG-模型=” login.email“>'是原始代码中的拼写错误,还是您在此发布的代码? –

+0

'

+0

'这个问题不是关于任何语法错误' - 但是有语法错误...如果你需要帮助,你需要发布你想要的帮助代码,而不是一些随机无效的代码 –

回答

0

尝试使用

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

'localStorage ['User-Data']'(几乎)是一样的东西 - 他似乎不想读这段代码片段中的实际值,只是存在,所以,这不会有所作为 –

0

改变你的代码

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

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