我在AngularJS新。我想在一個視圖中創建動態表:無法從一個函數中的數據控制器NG-重複
<table class="table">
<thead>
<tr>
<td>Name</td>
<td>Genre</td>
<td>Duration</td>
</tr>
</thead>
<tbody>
<tr ng-repeat="album in getAlbumsInfo(artists)">
<td>{{ album.name }}</td>
<td>{{ album.genre }}</td>
<td>{{ album.duration }}</td>
</tr>
</tbody>
</table>
這裏是我的控制器(artists
從後端接收):
$scope.getAlbumsInfo = function (artists) {
var albumsData = [];
artists.forEach(function (artist) {
var albumItemMap = new Map();
albumItemMap.set("name", artist.name);
albumItemMap.set("genre", artist.genre);
albumItemMap.set("duration", artist.geduration);
albumsData.push(albumItemMap);
});
return albumsData;
};
但它並不顯示在表中的任何數據。只是簡單的表格。 如果我用從$scope
類似的硬編碼數據我檢查:
$scope.albums = [
{ name: 'Cali Roll', genre: 'Pop', duration: 45 },
{ name: 'Philly', genre: 'Rock', duration: 50 },
{ name: 'Rainbow', genre: 'Relax', duration: 55 }
];
和(視部分):
<tr ng-repeat="album in albums">
它工作正常。但是,在功能getAlbumsInfo
的情況下,它不起作用。我究竟做錯了什麼?
UPD:我只需要一個功能,它的強制性條件。
你沒有使用'藝術家「在控制器功能。你爲什麼要這個參數? –
你爲什麼在ng-repeat中調用'getAlbumsInfo(artists)'?什麼是「藝術家」的對象? – superUser
嘗試'$ scope.getAlbumsInfo(藝術家)' – Mdk