2016-12-17 1 views
1

"/ users"경로에 할당 된 아래에 표시된 해결 속성이 있습니다. $ rootScope.resource에는 여러 개의 HATEOAS 스타일 링 크렐이 있습니다. "users"는 rels 중 하나입니다 ... 궁극적으로, 나는 "users"linkrel을 따라 ($ get) "usersResource"속성에 출력 (HATEOAS rel의 또 다른 레벨)을 할당하려고합니다. 내 컨트롤러를 통한 액세스 :

.when("/users", { 
      templateUrl: "/static/views/users.html", 
      controller: "usersController", 
      controllerAs: "usersController", 
      resolve: { 

       usersResource: function ($rootScope) { 

         if ($rootScope.resource) { 

         $rootScope.resource.$request().$get("users",{ 
           linksAttribute: "_links", 
           embeddedAttribute: "_embedded" 
          }) 
          .then(function successCallback(data) { 
           return data; 

          }, function errorCallback(data) { 
           return {} 

          }) 

        } 
        else 
         return {}; 
       } 

      } 

     }) 

이제 내 컨트롤러에서 "usersResource"에 액세스하려고 할 때 정의되지 않습니다. 컨트롤러에는 현재 로직이 없습니다. 나는 당분간 usersResource 콘텐츠를 콘솔에 출력하려하고있다 ...

(function() { 

angular 
    .module("HateoasApp") 
    .controller("usersController", usersController); 

usersController.$inject = ["usersResource"]; 

function usersController(usersResource) { 
    var vm = this; 

    // properties 
    vm.usersResource = usersResource; 

    // objects 

    // functions 
    console.log(usersResource); 
} 

})();

모든 의견/제안을 부탁드립니다. 감사!

답변

1

당신은 당신의 결심 함수에서 아무것도 반환하지 않는 :

return $rootScope.resource.$request()... 
^^^^^^ 
+0

당신을 감사합니다, 좋은 선생님! – PTrek