我在創建動態HTML模板時遇到了一些問題。要在表格中顯示一些數據,我必須在普通的字符串和數組之間分開。首先要做的事:HTML模板包含在另一個模板中,使用帶控制器的data-ng-include
指令。控制器包含我的數據,它本質上是具有不同屬性的對象。該objcect看起來是這樣的,幷包含字符串以及數組:AngularJs在HTML模板中單獨存儲數組和字符串
$scope.data = {
name: 'tony',
city: 'New York',
friends: ['Ann', 'Ben', 'John Doe'],
postal: 12345
};
還有一個匹配陣列的屬性,以動態分析的信息。
$scope.attributes = [{name: "Name", id: 'name'},
{name: "City", id: 'city'},
{name: "Friends", id: 'friends'},
{name: "Postal-code", id: 'postal'}
];
的data
獲取HTML
內部分析使用此代碼:
<table class="table table-striped">
<tbody>
<tr ng-repeat="attr in attributes">
<td>{{attr.name}}</td>
<td>{{data[attr.id]}}</td>
</tr>
</tbody>
</table>
這適用於字符串是絕對不錯,但我必須以某種方式確定的data
一個屬性是顯示一個記錄數組在記錄中使用ng-repeat
的一種列表。
我試圖使用Array.isArray(data[attr.id])
與if
條款在<script>
標籤內的不同變化,但沒有任何工作。 在年底friends
-attribute的數據應該得到一個顯示在下面,另一個在同一小區是這樣的:
Here上的jsfiddle
代碼
你能詳細點嗎? –
Something [like this](http://jsfiddle.net/Lt024p9h/3/)?所有值都轉換爲數組,然後迭代。 – kudlajz