0

내가 지금 같은 공장 내 AngularJS와의 편안하고 전화를 이동하여 내 응용 프로그램의 코드를 개선하기 위해 노력했다 :수 없습니다

을 app.js

에서 controller.js에서 services.js

swof.factory('engineerService', function($resource) 
{ 
    var data = $resource('/api/engineers/:empid',{empid: "@empid"}, 
      { 
      'get': 
      { method:'GET'}, 
      'save': 
      {method:'POST'}, 
      'query': 
      {method:'GET', 
      transformResponse: function(data) 
      { 
      return angular.fromJson(data); 
      }, 
      isArray:true}, 
      'remove': 
      {method:'DELETE'}, 
      'delete': 
      {method:'DELETE'} 
     }); 
    return data; 
}); 

에서

var myApp = angular.module('myApp', ['ngRoute','ngResource']); 

engineerService.query().$promise.then(function(data) 
{ 
    $scope.engineers = data; 
    typeof $scope.engineers; 
    console.log("[in]", $scope.engineers); 
    $scope.$apply; 
}); 
console.log("[out]", $scope.engineers); 

컨트롤러는 engineer.html 페이지에서 참조되며 $ scope.engineer의 엔지니어 목록이 표시됩니다.

은 다음과 크롬 콘솔의 출력이 될 때 :

내가 데이터를 얻을 수 없습니다 나는 어떤 이유 Output in Chrome console

는 $로 컨트롤러의 섹션의 외부를 표시하기 위해 REST 쿼리에서 반환 약속.

누군가 나를 도와 줄 수 있습니까?

+0

감사합니다. 관련 질문에 정보가 유용하지만 내 문제를 해결하지 않습니다. 정확히 똑같지는 않습니다. 즉, $ resource을 사용하고 변수를 false로 설정하여 제안 된 솔루션은 처음에 설명한 시나리오에서 작동하지 않습니다. 평가를 재고 해 주시겠습니까? 정말이 문제를 해결하는 데 도움이 필요합니다. – GerM

+0

다음을 시도해보십시오. var data : any; $ scope.engineer = engineerS ... ponse) { data = response; 데이터를 반환합니다. }}); – Sieg

+0

확인; 지금 노력하고있어. – GerM

답변

0

여기 해결책이 있습니다.

<tbody ng-repeat="engineer in (filtered = (engineers | filter: query | filter: searchKeyword | orderBy: orderByField:reverseSort))"> 

빅 : 우선 모든 서비스 부분의 : 컨트롤러에 대한 지금

swof.factory('engineerService', function($resource) 
{ 
var data = $resource('/api/engineers/:empid',{empid: "@empid"}, 
     { 
      'get': 
      { method:'GET'}, 
      'save': 
      {method:'POST'}, 
      'query': 
      {method:'GET', 
      transformResponse: function(data) 
      { 
      return angular.fromJson(data); 
      }, 
      isArray:true}, 
      'remove': 
      {method:'DELETE'}, 
      'delete': 
      {method:'DELETE'} 
     }); 
     return data; 
}); 

다음과 같이 $의 scope.engineers에서

swof.controller('engineerController', ['$scope', '$log', '$http', 'engSchedService', 'engineerService', function($scope, $log, $http, engSchedService, engineerService) { 

engineerService.query().$promise.then(function(data) 
{ 
    $scope.engineers = data; 
}); 
}]); 

값은 ngrepeat HTML에서 액세스 한 이 일을 도와 주신 모든 분들께 감사드립니다. G