我有一個模式,彈出一個按鈕單擊。模態的內容是項目列表。該列表存儲在控制器中,並由來自GET請求響應的一些數據填充。ngRepeat暫時顯示重複列表
無論何時我反覆打開模式,隱式地將更新調用到列表中,我都會看到列表的多個副本 - 每次點擊大約有一個副本。顯示的列表然後解析爲實際存儲在列表中的內容。
這可能是一個控制器或HTML的問題,或者它是從ngRepeat的某種副作用?
以下是從HTML文件片段:
<li ng-repeat="itemin vm.items">{{item.name}}</li>
<a href="#" onclick="togglePanel('Panel')" ng-click= "vm.getItems()">View Items</a>
而且從控制器:
getItems(): angular.IPromise<core.IItem> {
var self: Controller = this;
return this.itemDataService.getItems()
.then(function(response: any): angular.IPromise<core.IItem> {
self.items = response.data;
return response;
},
function(response: any): angular.IPromise<core.IItem> {
self.items = [];
return response;
});
}
請詢問你是否需要看到更多的代碼。
編輯:額外的代碼... 的onclick被稱爲:
function toggleSavedSearchPanel(id)
{
var e = document.getElementById(id);
if (e.style.display == 'block' || e.style.display=='')
{
e.style.display = 'none';
}
else
{
e.style.display = 'block';
e.focus();
}
}
問題出在我的CSS代碼上;有一個過渡:在列表中的CSS爲0.2s。刪除它解決了我所有的問題。 –