2015-02-06 2 views
0

Я пытаюсь разбить этот ответ json на несколько массивов, которые я могу получить на лицевой стороне. Я получил ответ JSon, такие как:Break Up Ответ JSON в нескольких массивах

{ 
"clients": [ 
{ 
    "id": "2", 
    "f_name": "test", 
    "l_name": "test", 
    "email": "[email protected]", 
    "company_name": "asd", 
    "street": "asd", 
    "city": "asd", 
    "state": "asd", 
    "zip": "54913", 
    "identity_id": "6", 
    "admin_id": "1", 
    "created_at": "2015-01-22 22:55:38", 
    "updated_at": "2015-02-04 04:03:13" 
}, 
{ 
    "id": "3", 
    "f_name": "dsf", 
    "l_name": "df", 
    "email": "[email protected]", 
    "company_name": "asdf", 
    "street": "sdf", 
    "city": "asdf", 
    "state": "asdf", 
    "zip": "asdf", 
    "identity_id": "6", 
    "admin_id": "1", 
    "created_at": "2015-01-23 17:49:51", 
    "updated_at": "2015-01-23 17:49:51" 
} 
    ], 
    "identity": { 
"id": "6", 
"name": "Test Company", 
"street": "13 Street", 
"city": "An", 
"state": "State", 
"zip": "54913", 
"admin_id": "1", 
"created_at": "2015-01-17 15:34:12", 
"updated_at": "2015-02-04 03:43:40", 
"image": "https:\/\/s3_whatever", 
"phone": "", 
"email": "", 
"paypal": "whatever_whatever.com" 
    } 
} 

Я хотел бы иметь "клиентов положить в $ scope.clients и идентичность положить в $ scope.identity

Вот мой код:

var app = angular.module("myApp", []); 

app.controller("TestController", function ($scope, $http) { 


$http.get('http://localhost:8000/clients/json').success(function(clients) { 
    $scope.clients = clients.clients; 
    $scope.identity = clients.identity; 
}); 


}); 

Вот передний конец код:

<div ng-app="myApp"> 

<div ng-controller="TestController"> 
<ul> 

<li ng-repeat="client in clients"> 
{{ client.email }} 
</li> 

</ul> 
</div> 

<h1> 
{{ identity }} 
</h1> 

</div> 


<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.12/angular.min.js">  </script> 
<script src='/js/app.js'></script> 
+0

Разве это не работает? ваш код '$ http' выглядит правильно –

+0

Это не так. Я также попытался использовать $ scope.clients = clients.clients (и $ scope.identity = clients.identity), который также не возвращает идентификатор. Кажется, что массив клиентов работает с этим интерфейсом: * добавлен в начало страницы * – TerryG

+1

Вы уверены, что json находится в том формате, который вы разместили. Я скопировал и пошл его, и он работает нормально: [Plunkr] (http://plnkr.co/edit/unBtCOEwqYRiwU7mfcO9?p=preview) –

ответ

1

Ваше закрытие из вашего контроллера и сделать identity из объема

<div ng-app="myApp"> 
    <div ng-controller="TestController"> 
     <ul> 
      <li ng-repeat="client in clients"> 
       {{ client.email }} 
      </li> 
     </ul> 
    </div><!--END OF TEST CONTROLLER AND $Scope FOR THAT CONTROLLER --> 
    <h1> 
{{ identity }} 
</h1> 
</div> 

, чтобы исправить это просто переместить h1 в контроллер DIV

<div ng-app="myApp"> 
    <div ng-controller="TestController"> 
     <ul> 
      <li ng-repeat="client in clients"> 
       {{ client.email }} 
      </li> 
     </ul> 
     <h1>{{ identity }}</h1> 
    </div><!-- end of TestController --> 
</div><!-- end of myApp --> 
+0

d'oh. Спасибо! – TerryG

Смежные вопросы