2016-09-01 2 views
1

데이터베이스를 읽는 php와 echo json으로 웹 서비스를 만들었습니다. 결과를보기 위해 경로로 이동하고 결과는 성공합니다. 여기 내 웹 서비스의 예. 여기

[{"id":"1","skill":"1","src":"walmart","total":"1"},{"id":"1","skill":"1","src":"target","total":"2"}] 

는, 여기
(function() { 
'use strict'; 
var app = angular.module('myApp', ['angular.filter']); 
// Declare app level module which depends on views, and components 
app.controller('DeveloperTable', function ($scope, $http) { 
     var vm = this; 

     // GET request example: 
     $http({ 
      method: 'GET', 
      url: '../_includes/web_service_person.php' 
     }).then(function successCallback(data) { 
      vm.developer = data; 
     }, function errorCallback(data) { 
      console.log(":("); 
     }); 
    }); 

})(); 

<div ng-controller="DeveloperTable"> 
    <h4>Developer Assesment</h4> 
    <table class="table"> 
     <tr> 
      <th>pid</th> 
      <th ng-repeat="(skill, value) in developer | groupBy: 'skill'"> 
      {{skill}} 
      </th> 
     </tr> 

재미있는 부분은 내 콘솔에서 오류가 없다는 것입니다 내 index.html을 내 app.js 코드 만 나는 데이터를 얻지도 못한다. 내가 여기에없는 이유는 무엇입니까?

편집 다음 groupBy 필터가 angular-filter library

+0

여기서 어떤 결과를 얻으려고합니까? – plong0

+1

'ng-controller = "DeveloperTable as vm"그리고 나서'vm.developer'를 반복하십시오. –

답변

1

ng-repeat 구문에서 유래는 다음과 같습니다 ng-repeat="(key, value) in myObj". 게시 한 json에 따라 vm.developer이 배열이므로 skill이 배열 색인으로 설정됩니다.

json 개체에 did 속성이 표시되지 않기 때문에 groupBy: 'did'에 대해 확실하지 않습니다.

는 같은 시도 : 사물의

<th ng-repeat="data in vm.developer | groupBy: 'id'"> 
    {{data.skill}} 
</th> 
+1

나는 [this dependency] (https://github.com/a8m/angular-filter)를 사용하고 있습니다. 따라서 구문은 약간 다릅니다 . – Gilbert

+0

GroupBy : 'did'는 오타였습니다. 내 질문을 업데이트합니다. 제게 알려 줘서 고마워요. – Gilbert

+0

하하, 원래의 질문에서 분명히 언급되어야 할 것과 같은 의존성. – plong0

1

커플 :

당신은 당신의 코드에서 $scope.developer = ...을 할 필요가

, vm.developer는 페이지에 범위에 있지 않습니다. 브라우저에서

열기 방화범이 끌려 네트워크 탭으로 이동하여 웹 서비스에 HTTP 요청을보고 : 제쳐두고, 당신은 할 수

. 데이터가 반환되는지 확인할 수 있습니다. 그럴 경우 다음과 같이 디버그하십시오.

HTML을보고 <pre>{{developer | json}}</pre>을 추가하면 파일이 비어 있다고 생각됩니다.

+0

'$ scope.developer = ...;'스코프의 전체 컨트롤러를 노출시키지 않습니다. 또는 'ng-controller = "DeveloperTable as vm"'vm으로 컨트롤러를 노출 시키십시오. – plong0

+0

둘 다'

{{developer | json}}
'을 열고'dev tools, network, response'을 열고 저의 json 객체가 있습니다. – Gilbert

+0

그래서 '

{{developer | json}}
'이 당신의 객체를 렌더링하고 있습니까? 어때요'
{{developer | groupBy: 'skill' | json}}
'? – plong0