2016-10-01 72 views
1

我從PHP這樣的JSON數據返回:AngularJS陣列NG重複問題

[ 
{ 
    "id": 143, 
    "sender": "btknctTR", 
    "title": "Batıkan Bu nedir bu bu ne bu", 
    "date": "Jun 11, 2016 6:47:21 AM", 
    "lastupdatedate": "Jun 11, 2016 1:48:54 PM", 
    "category": "Sorular", 
    "priority": "Kritik", 
    "appointedRole": "Moderatör", 
    "archived": true, 
    "messages": [ 
     { 
      "sender": "btknctTR", 
      "message": "Test message", 
      "date": "Jun 11, 2016 1:48:30 PM" 
     }, 
     { 
      "sender": "btknctTR", 
      "message": "This i second test message", 
      "date": "Jun 11, 2016 1:48:54 PM" 
     } 
    ] 
}, 
{ 
    "id": 198, 
    "sender": "btknctTR", 
    "title": "Yeni yeni yeniden", 
    "date": "Jun 11, 2016 12:53:32 PM", 
    "lastupdatedate": "Jun 11, 2016 8:18:39 PM", 
    "category": "Diger", 
    "priority": "Normal", 
    "appointedRole": "Moderatör", 
    "archived": true, 
    "messages": [ 
     { 
      "sender": "btknctTR", 
      "message": "Yeni yeni yenidenYeni yeni yenidenYeni yeni yenidenYeni yeni yenidenYeni yeni yenidenYeni yeni yenidenYeni yeni yenidenYeni yeni yenidenYeni yeni yenidenYeni yeni yeniden", 
      "date": "Jun 11, 2016 7:54:41 PM" 
     }, 
     { 
      "sender": "DonduranAtes", 
      "message": "asdasd\r\n", 
      "date": "Jun 11, 2016 7:54:50 PM" 
     }, 
     { 
      "sender": "btknctTR", 
      "message": "sadasdasdasd", 
      "date": "Jun 11, 2016 7:55:14 PM" 
     } 
    ] 
}, 
{ 
    "id": 3810, 
    "sender": "btkncttr", 
    "title": "asdasdasdasdas", 
    "date": "Aug 6, 2016 10:55:36 AM", 
    "lastupdatedate": "Aug 7, 2016 10:33:19 PM", 
    "category": "Diger", 
    "priority": "Normal", 
    "appointedRole": "Moderatör", 
    "archived": true, 
    "messages": [ 
     { 
      "sender": "btkncttr", 
      "message": "This is the message", 
      "date": "Aug 6, 2016 10:57:07 AM" 
     }, 
     { 
      "sender": "player", 
      "message": "This is the message tooo", 
      "date": "Aug 6, 2016 10:57:07 AM" 
     } 
    ] 
} 
] 

但我怎麼也找不到可以NG-重複theese。當我寫{{data.sender}}在控制檯中返回錯誤[ngRepeat:dupes]。

我需要名單票列表頁面這個值,這是用戶一個支持系統。

+1

NG重複= 「數據項|軌道由$指數」 - 嘗試TRACK BY) – KoIIIeY

+0

請出示所有相關的代碼 – charlietfl

+0

NG重複= 「在DATAS數據」 按部就班地進行,$指數 – Akis

回答

0

你得到在控制檯[ngRepeat:dupes]錯誤,因爲數據中有一些重複。

如果你通過所有的數據要循環,並顯示sender,你可以做這樣的事情

<div ng-repeat="data in jsonData track by $index">{{data.sender}}</div> 

$index跟蹤使用數組中的對象的索引數組中的每個對象。

+0

這是完全正確的答案。 –

0

假設您的對象位於變量$ scope.data的值中。

然後你就可以在與角度您的HTML渲染這個如下:

<div ng-repeat="item in data track by $index"> 
    {{ item.id }} 
</div> 

更新:事實上,與此特定錯誤,您通過$索引需要跟蹤

+0

' {{data.id}} ' 我已經試過了。 錯誤'angular.js:13920錯誤:[ngRepeat:dupes] http://errors.angularjs.org/1.5.8/ngRepeat/dupes?p0 = dataa%20in%20datas&p1 = object%3Anull&p2 = null' –

+0

ng -repeat =「在DATAS數據」按部就班地進行,$ index' – Akis

+0

@Akis它是否符合這種類型真實 'NG重複=「數據DATAS軌道由$指數」' 感謝您的回答,謝謝解決方案@Akis –

0

試試這個, Here is working fiddle
也檢查角度版本,它應該至少1.2,因爲它是在該版本中引入的。

<div ng-controller="MyCtrl"> 
    <div ng-repeat="data in datas track by $index"> 
    Sender : {{data.sender}} 
    <br> Messages :<br> 
    <div ng-repeat="(mindex, mvalue) in data.messages"> 
     {{mindex+1}}. {{mvalue.message}} - {{mvalue.date}} 
    </div> 
    <br> 
    </div> 
</div>