嗨,我正在尝试注入 ngtorage 以在本地处理会话,我尝试了不同的方法来做到这一点,但没有结果:
这是我的 app.js
var myApp = angular.module('myApp', ['ngStorage']);
loginController.js 在一个单独的文件中:
myApp.controller('logincontroller', ['$scope', '$http','log', function($scope, $http ,log,$sessionStorage)
{
$scope.auth = function(){
log.logIn($scope.pseudo,$scope.pwd).
then(function(data){
if (data.data.log == true){
$scope.logged = true;
$scope.success = "Hey ! t'es connect";
$sessionStorage.user = data.data.pseudo;
}else
{
$scope.erreur = "connexion echouée";
$scope.error = true;
}
});
}
}]);
和 authSerivce.js 我注入控制器的服务
angular.module('myApp').factory('log', ['$http', function($http){
return{
/*Check whether the user is logged in
* @returns boolean
*/
isLoggedIn: function isLoggedIn(){
return session.getUser() !== null;
},
/*Log in
* @param credentials
* @returns {*|Promise}
*/
logIn: function(username, pwd){
return $http
.post('/login', {'username':
username, 'pwd': pwd})
.success(function(data){
if (data.log == true){
console.log(data);
//$localstorage.user= data.pseudo;
return data;
}
}).error(function(data){
return data;
});
},
/* Log out : on peut se poser la question d'une requête HTTP ! pour faire le
ménage côté serveur ?!
* @returns {*|Promise}
*/
logOut: function(){
return $http
.get('/logout')
.then(function(response){
// Destroy session in the browser
session.destroy();
return(response.data);
});
}
}
}]);
返回错误的行是
$sessionStorage.user = data.data.pseudo;
错误是无法设置未定义的属性“用户”
帮助非常感谢的人