귀하의 GET api/list/
요청 당신은 아마 이런 식으로 뭔가를 반환 : 이것은 당신이 항상 api/list/
명령에 관련된 작업을 반환 할 것을 가정한다
[
{
"id": 1,
"name": "List #1",
"tasks": [
{
"id": 1,
"name": "Task #1 on List #1"
},
{
"id": 2,
"name": "Task #2 on List #1"
},
{
"id": 3,
"name": "Task #3 on List #1"
}
]
},
{
"id": 2,
"name": "List #2",
"tasks": [
{
"id": 1,
"name": "Task #1 on List #2"
},
{
"id": 2,
"name": "Task #2 on List #2"
},
{
"id": 3,
"name": "Task #3 on List #2"
}
]
}
]
.
그러면 모든 목록과 모든 작업을 새로 고칠 때마다 한 번만 호출하면됩니다.
$ http.get이 호출 된보기에 바인딩 된 단일 컨트롤러가 있어야합니다. 성공하려면 $scope.lists = data
으로 설정해야합니다.
보기에는 두 개의 중첩 된 ng-repeat
태그 만 있으면됩니다. 예를 들어, 정렬되지 않은 목록을 사용할 수 있습니다 : 나는 각도 사용하지 않은
<div ng-controller="ListsController">
<ul>
<li ng-repeat="list in lists">
<ul>
<li ng-repeat="task in list.tasks">
</li>
</ul>
</li>
</ul>
</div>
을하지만, 나는 이것이 당신이해야 할 모든 것입니다 확신 해요. 단일 AJAX 호출은 각 목록에 대해 <li>
요소를 채우고 해당 목록에 속한 각 작업에 대해 중첩 된 <li>
요소를 중첩합니다.
리스트 -> 작업 일대 다 관계입니까? 이는 각 작업이 목록을 가져야하며 하나의 목록 만 상위 개체로 가질 수 있음을 의미합니다. –
예, 일대 다 관계입니다. – tcrafton
'$ scope.tasks '는 모든 작업을 참조하거나 현재 (선택된) 목록과 관련된 모든 작업만을 참조합니까? 또한,'api/list /'를 여러 번 호출해서는 안된다. 일대 다 관계라면 Tasks 속성이 하위 작업의 중첩 JSON 배열 인 각 목록과 함께 JSON 배열을 반환 할 수 있어야합니다. 그런 다음'$ scope.lists.tasks'를 사용하여 이러한 작업에 액세스 할 수 있습니다. –