簡體   English   中英

如何訪問返回的json對象的屬性? (AngularJS)

[英]How to access the properties of returned json object? (AngularJS)

我正在嘗試對facebook進行api調用(使用angularJs。這是我的代碼(取自服務):

fbTest: function (name) {
    resource = $resource('http://graph.facebook.com/:id?fields=id,name,picture', { id: '@id' });
    return resource.get({ id: name });
}

它返回數據就好了:(用Fiddler檢查)

HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Cache-Control: private, no-cache, no-store, must-revalidate
Content-Type: application/json; charset=UTF-8
ETag: "c49e5dcad5a864ff2e16bb3af547231f725c05e7"
Expires: Sat, 01 Jan 2000 00:00:00 GMT
Pragma: no-cache
X-FB-Rev: 1002313
X-FB-Debug: tMeW4nnfiRBj6VK+QRtbe0YdaGfQfkXcaWL4VzXTXxw=
Date: Mon, 11 Nov 2013 16:53:29 GMT
Connection: keep-alive
Content-Length: 241

{
   "id": "Data",
   "name": "Data",
   "picture": {
      "data": {
         "url": "Data",
         "is_silhouette": false
      }
   }
}

但是,我如何訪問屬性? 我嘗試寫.name,但不會返回任何內容。

文檔對我來說有點不清楚,但似乎有一些公開的方法,如.get異步執行。 這意味着.get的返回值實際上可能不會從HTTP返回數據。

相反,你需要做類似的事情:

resource.get({ id: name }, function (data) {
    // do something with data.name, etc.
});

發生這種情況是因為返回函數時get的結果尚未就緒。 你回來了一個promise

嘗試將$resource.get綁定到$scope某個屬性,並在准備好后將正確顯示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM