0
Im有點新的Angular/JSON對象,我試圖從嵌套的對象中獲取一些東西。從嵌套的JSON對象獲取數據!!帶ID!使用角度GET
這並不難,但問題在於JSON對象有一個即時更改。
下面是JSON對象完整列表中1個對象的示例。正如你可以看到一個更大的對象的這部分。
我想要的是ng-repeat中每個任務的task.assignment.name,但由於賦值和名稱之間的整數,我無法獲取assignment.name。
看看我的對象:
{
"project-45": {
"label": "Bar",
"url": "http://someurl.com/api",
"assignments": {
"5147": {
"id": 5147,
"type": "Task",
"project_id": 45,
"assignee_id": 9,
"label_id": 27,
"category_id": 0,
"milestone_id": 0,
"name": "assignmentname",
"body": "<p>body.</p>",
"created_on": "2015-06-17 13:40:31",
"age": 6,
"created_by_id": 66,
"created_by_name": "Jelle",
"created_by_email": "[email protected]",
"due_on": "2015-06-19",
"priority": 0,
"task_id": 81,
"project": "Bar"
}
}
}
}
project-75": {
"label": "Another",
"url": "http://mijn.example.com/api",
"assignments": {
"5153":
...
這是我的控制器:
var main = angular.module("main", []);
main.controller("mainCntrl", function($scope, $http){
var apiUrl = "http://my.example.com/api.php?&format=json&";
var apiKey = "&auth_api_token=somekey";
var onUserComplete = function(response){
$scope.user = response.data;
console.log("User Data loaded");
}
var onTasksComplete = function(response){
$scope.tasks = response.data;
console.log("Tasks loaded");
}
$http.get(apiUrl + "path=my-tasks" + apiKey).then(onTasksComplete);
$http.get(apiUrl + "path=people/1/users/9" + apiKey).then(onUserComplete);
}
);
,最後與NG-reapter index.html文件
<div class=" block full border">
<h3>Active tasks</h3>
<ul ng-repeat="task in tasks">
<li>
<ul>
<li>{{$index+1}}</li>
<li>Project: {{task.label}}</li>
<li>task name: {{task.assignments.name}}</li> <!-- Doesnt work -->
<li>task description: {{task.assignments.body}}</li> <!-- Doesnt work -->
</ul>
</li>
</ul>
</div>
謝謝!
只是關於JSON vs對象的說明:JSON是一個字符串,而不是一個對象,因此它的縮寫** ** ** ** ** S ** cript ** O ** ** ** N **選擇。你所擁有的是口語上被稱爲POJO或** P ** lain ** O ** ld ** J ** avaScript ** O ** bject。他們是不同的。前者是一種類似於YAML或XML的數據交換格式,而後者是具有屬性和值的實際對象。 –
謝謝,不知道! –