1
) 다음 함수가 있습니다. 작동하지 않지만, sessionStorage
변수가 이미 설정된 경우 사용하는 것이 좋습니다. 그렇지 않은 경우 API 호출을 호출하고 다음 번에 sessionVariable
을 설정하십시오.반환 값이 비동기 일 수있는 함수 처리 (
isAdmin: function() {
// hit the first page, or refreshed.
if(sessionStorage.getItem("isAdministrator") === null) {
AzureGroupService.get({adGroup: "Programmers"}).$promise.then(function (data) {
sessionStorage["isAdministrator"] === data.isMember;
return data.isMember;
});
}
else {
return JSON.parse(sessionStorage["isAdministrator"]);
}
}
따라서 함수가 즉시 반환되거나 API를 기다려야 할 수 있습니다. 이렇게하는 것이 올바른 방법일까요?
그렇다면 컨트롤러에서 어떻게 호출 할 수 있습니까? 이 같은?
user.isAdmin().then(function(response) {
vm.test = response.data;
});
그게 전부입니다. 감사. 나는 하나의 작은 변화를 만들어야 만했다. 나는 그것이'return $ q.when이어야한다고 생각한다. (JSON.parse (sessionStorage [ "isAdministrator"])); – crowhill
반환 할 필요가 없음 –
반환하지 않으면 "TypeError : 속성을 읽을 수 없습니다. '가'정의되지 않았습니다. '라는 메시지가 나타납니다. 상황에 대한 나의 제한된 이해에서가는 것, 나는 그것이 합리적이라고 생각합니다. – crowhill