2013-07-30 117 views
0

搞亂了我創建了一個JavaScript對象,方式如下:AngularJS NG-重複與順序

$scope.initNews = function() { 
    for (var i = 2013; i > 2000; i--) { 
     $scope.news[i] = {}; 
     $scope.news[i]["year"] = Number(i); 
     for (var j = 1; j <= 12; j++) { 
      $scope.news[i][j] = {}; 
      $scope.news[i][j]["month"] = $scope.month_names[j-1]; 
     } 
    } 
}; 

但NG-重複似乎亂用它遍歷項目的方式。

<ul ng-repeat="old_news_year in news">{{old_news_year.year}} 
    <li ng-repeat="old_news_month in old_news_year">{{$index + 1}}. {{old_news_month.month}}</li> 
</ul> 


對於整個樣品,檢查http://jsfiddle.net/tFewZ/1/

EDIT
我的印象(通過添加 「調試器」;進入碼) 該AngularJS通過循環根據它們的 $$ hashKey而不是根據它們的Javascript索引...


還是不明白有關的13個元素,但...這就是原型屬性?

在此先感謝。

最好的問候,
紀堯姆

+0

請發表您的解決方案作爲一個答案,爲他人謀取利益。謝謝 –

回答

1

解決方案是使用$指數,而不是( '中')的徵收方式。

<ul ng-repeat="old_news_year in news">{{old_news_year.year}} 
    <li ng-repeat="old_news_month in old_news_year"> 
     {{$index + 1}}. {{old_news_year[$index+1].month}} 
    </li> 
</ul> 

檢查:http://jsfiddle.net/guillaume1978/XmSTK/2/