2013-07-15 111 views
0

我在我的html中使用了ng-repeat來在作用域上的數組中顯示每個「工作簿」對象的標題。出於某種原因,第三個標題正在顯示三次。該測試列表中有三個對象,因此它正在迭代正確的次數。這裏是模板的html代碼:ng-repeat只顯示最後一個元素

<div id="list-of-workbooks" ng-controller="TableauListCtrl" class="ng-scope" > 
    <ul> 
     <li ng-repeat="workbook in workbooks" ng-click="clickWorkbook(workbook)" ng-mouseover="mouseoverWorkbook(workbook)" class="ng-binding"> {{ workbook.getTitle() }} </li> 
    </ul> 
    </div> 

輸出看起來是這樣的:

Workbook 3 Title 
Workbook 3 Title 
Workbook 3 Title 

是我的錯誤的語法?謝謝!

編輯:這也可能是錯誤發生時,列表製成。每個標題都是從一個XML文檔中讀取的(該長鏈調用返回正確的標題)並用於設置工作簿(自定義服務)的標題,然後將其添加到列表中。這段代碼中是否有錯誤?它來自應用程序模塊。

 var title; 
     var workbooks = []; 
     for (var i = 0; i < workbooksData.length; i++) { 
      var workbook = Workbook; 
      title = workbooksData[i].getElementsByTagName("name")[0].childNodes[0].nodeValue; 
      workbook.setTitle(title); 
      workbooks[i] = workbook; // add a workbook with each title to the array of Workbooks 
     } 
     return workbooks; 

難道有事情做與方式的角度監聽到模型的變化,建議在this問題的接受的答案,在第二個項目符號點?這超出了我的理解範圍,所以如果有人能指出我正確的方向瞭解更多,我將不勝感激!

回答