関数を返すサービスを作成していますが、関数から値が返されません。コードは次のとおりです。angularjsアプリケーションの非同期関数
function getUser() {
var Users = $resource('/api/users',{},{query: {method: 'get', isArray: true}});
return Users.query({username:localStorage.getItem("token")}).$promise
}
function userrole() {
var userrole='';
var tmp=getUser();
tmp.then(function(user){
var userrole= user[0].role;
console.log('The role is '+user[0].role);
userrole=user[0].role;
return userrole;
});
console.log('@ the end of userrole');
}
返されない関数はuserrole
です。私はそれが非同期の問題のためだと信じています。これを解決するにはどうすればいいですか?
あなたは、コンソールには何を見ていますか? – GMaiolo