2012-07-05 88 views
1

我在數組中有一些數據(23000條記錄)。我需要將它加載到商店。我在虛擬機上測試性能。ExtJS :: Store loadData方法優化

Chrome加載4秒,IE8加載200!秒。我已經暫停了該商店的活動。我可以做些什麼來優化這部分應用程序。 (IE下降約長時間運行的腳本煩人的錯誤)..

Wtb.getPlanShiftStore().suspendEvents(false); 
Wtb.getPlanShiftStore().loadData(data);  
Wtb.getPlanShiftStore().resumeEvents(); 

也許有一些是另一種方法,即會做得更快,或者我需要重寫的東西嗎?我只需要創建模型並將其存儲到商店的數據中......或者這是不可能的......?

+0

而你正在'loadData'之前記錄時間嗎?你的數據是如何定義的? – sha

+0

我正在使用(new Date())。getTime(),然後計算前後的差異。數據被定義爲像大數組一樣,具有簡單對象(將通過loadData方法轉換爲模型)。 –

+0

您是否嘗試過使用此數據定義商店? – sha

回答

0

loadRecords do suspendEvents本身。嘗試sortOnLoadfalse,也許它會有所幫助。 並使用服務器端數據分頁。

+0

我雖然OP正在討論加載不是來自遠程存儲的靜態數據。 – sha

+0

我在客戶端上生成所有這些數據。 IE生成數組10秒,並加載它200秒...排序關閉。 –

+0

我明白,但我問(如上面的@Neil McGuigan):「爲什麼」? –