我正在制作一个测试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 :(得分: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)));