2016-09-16 137 views
1

我有這樣NG-重複angularjs

Obj = { 
    "elements":[ 
       {"name":"something","id":"v1-234"}, 
       {"name":"somethingElse","id":"v1-239"} 
      ], 
    "paging":{ 
    "next" : "100", 
    "total": "2000" 
    }, 
"linked"={ 
      "partners":[ 
         {"id":"82","name":"A"}, 
         {"id":"83","name":"B"} 
         ], 
      "instructors": 
         [ 
         {"id":"11232","name":"alex"}, 
         {"id":"11432","name":"boob"} 
         ] 
      } 
    } 

我有元件陣列和夥伴和教師陣列內等於項的對象。我只放置了兩件物品以供展示,可能會有很多。

Obj.elements [0]與Obj.linked.partners [0]和Obj.linked.instructors [0]有關。同樣,對於第一,第二,第三......項目也是如此。

我怎樣才能NG-重複此對象上,這樣我可以顯示

Obj.elements [I] Obj.linked.partners [I] Obj.linked.instructors [I]

在時間在HTML模板?

+0

你將不得不格式化您的viewmodel以滿足您的需求。 –

回答

5

如果你的元素,合作伙伴,和講師陣列將永遠是相同的長度和你想例如聯合起來,你可以嘗試這樣的名字。

<div ng-repeat="element in Obj.elements"> 
    {{element.name}} {{Obj.linked.partners[$index].name}} {{Obj.linked.instructors[$index].name}} 
</div> 

$ ng index指示ng-repeat中的Angular用於在迭代對象時跟蹤其位置。這裏是文檔:ng-repeat

+0

我認爲'Obj.elemnts'會拋出一個錯誤,因爲它看起來不是一個有效的'repeat_expression'(參見文檔),您應該在Obj.elements中的'ng-repeat =「項目中修改它,即使您不要使用項目 – drakyoko

+0

它不會拋出錯誤,因爲Obj.elements是一個數組。 – RickCoxDev

1

ng-repeat$index範圍變量:

<ANY ng-repeat="element in model.elements"> 
    <span ng-bind="element.name"></span> 
    <span ng-bind="model.linked.partners[$index].name"></span> 
    <span ng-bind="model.linked.instructors[$index].name"></span> 
</ANY> 
+0

我認爲span應該是'ng-bind = model.linked。[...]' – drakyoko

+0

@drakyoko應該是什麼? ; P –

+0

對不起,我正在編輯:) @Matias Fidemraizer – drakyoko