2016-08-18 98 views
0

我有以下對象。我怎樣才能顯示具有嵌套值的行?如何顯示ng-repeat嵌套值

$scope.mainObj = [{ 
    name: 'a', items : [1,2,3], 
    name: 'b', items : [4,5,6], 
}] 

<table> 
<tr ng-repeat="obj in mainObj"> 
     <td></td> 
</tr> 
</table> 

我希望我的輸出是:

<table> 
    <tr> 
     <td>1</td> 
    </tr> 
    <tr> 
     <td>2</td> 
    </tr> 
    <tr> 
     <td>3</td> 
    </tr> 
    <tr> 
     <td>4</td> 
    </tr> 
</table> 
+0

什麼是 「嵌套值」? –

+2

看起來您需要將'$ scope.mainObj'更改爲'[{name:'a',items:[1,2,3]},{name:'b',items:[4,5,6 ]}]' – csschapker

回答

3

你可以重複table這是有效的HTML tbody假設items可以有實體。

HTML

<table> 
    <tbody ng-repeat="obj in mainObj"> 
    <tr ng-repeat="item in obj.items"> 
     <td>{{item }}</td> 
     </tr> 
    </tbody> 
</table> 

更新

糾正你的對象結構以及@csschapker的評論建議。

$scope.mainObj = [{name: 'a', items:[1, 2, 3]}, {name: 'b', items: [4, 5, 6]}] 
+0

如果我有一些沒有物品的物品會怎麼樣? – KingKongFrog

+0

@KingKongFrog你能否介紹一下你在說什麼? –

+0

nm ....我用ng-if在ng-repeat中。我很好。 – KingKongFrog

0

使用這樣的代碼:

<table> 
<tr ng-repeat="obj in mainObj"> 
    <td ng-repeat="item in obj.items track by $index"> 
    {{item}} 
    </td> 
</tr> 
</table> 

和編輯你的源對象:

$scope.mainObj = [ 
    {name: 'a', items: [1, 2, 3]}, 
    {name: 'b', items: [4, 5, 6]} 
]; 
+0

這不會給我每一行。 – KingKongFrog

+0

嘗試按$索引添加音軌 - 我將代碼更新爲答案 –