国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

easyui datagrid 大數據加載效率慢,優化解決方法(推薦)

2019-11-19 19:00:29
字體:
來源:轉載
供稿:網友

在使用easyui datagrid途中發現加載數據的效率真的不是一般的差。經測試IE8加載300條數據就感覺明顯的慢了,加載2000條數據就另人崩潰用時差不多60秒,就算在google瀏覽器測試結果也快不了幾秒。 平時聽聞easyui datagrid效率底下,自己測試才發現真是使人無法忍受。

筆者只好百度,google解決方法,發現一篇文章說改

//1.3.3版本是這樣的,其它版本也是這句代碼 $(_1e0).html(_1e4.join("")); 

改為:

$(_1e0)[0].innerHTML = _1e4.join(""); 

筆者找了類似的地方修改,測試后結果還是一樣。沒有任何效果,可能是跟作者的版本不同,我的是1.3版,作者是的1.33版。

忙了半天,只好自己續步調試追蹤。經過努力終于找到了導致慢的真正兇手。真正造成慢的代碼如下:

for (var i = 0; i < trs2.length; i++) {var tr1 = $(trs1[i]);var tr2 = $(trs2[i]);tr1.css("height", "");tr2.css("height", "");var _43f = Math.max(tr1.height(), tr2.height());tr1.css("height", _43f);tr2.css("height", _43f);}

看代碼就清楚,上面是對比表格中兩行的高度,然后把高的賦值給各行。

解決:兇手找到了,怎樣解決呢?筆者是直接屏蔽她們的對比和賦值。讓瀏覽器自動適應高度吧。

如下:

for (var i = 0; i < trs2.length; i++) {/*var tr1 = $(trs1[i]);var tr2 = $(trs2[i]);tr1.css("height", "");tr2.css("height", "");var _43f = Math.max(tr1.height(), tr2.height());tr1.css("height", _43f);tr2.css("height", _43f);*/}

好了,屏蔽后。讓我們測試效率。測試一萬條記錄,測試代碼片段如下:

var obj = { 'total': 100, 'rows': [{ id: '1', name: '一' }, { id: '2', name: '二'}] };for (var i = 0; i < 10000; i++) {var row = ({ id: 'id' + i, name: '一' });obj.rows.push(row);}$('#tt').datagrid({url: null,pagination: true,pageSize: 20,pageNumber: 1,rownumbers: true,fitColumns: false,columns: [[{ field: 'id', title: 'id', width: 100 },{ field: 'name', title: 'Name', width: 100 }]]});$('#tt').datagrid('loadData', obj);

好了,現在是10000條記錄啊,IE8只用1秒不到加載完成。改成3000條記錄,只要1~2秒加載完成。

結論:把那該死設置高度代碼直接屏蔽。嘻嘻,有驚喜。EASYUI版本:1.3版

以上這篇easyui datagrid 大數據加載效率慢,優化解決方法(推薦)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 井研县| 攀枝花市| 南昌县| 诏安县| 长宁区| 科尔| 景德镇市| 顺义区| 武城县| 清水河县| 绥滨县| 常宁市| 互助| 临猗县| 都安| 遂平县| 福贡县| 卫辉市| 鄢陵县| 怀化市| 罗定市| 舞钢市| 乌鲁木齐市| 宣威市| 平顶山市| 加查县| 金寨县| 商丘市| 军事| 辽阳县| 新蔡县| 禹城市| 杭州市| 津南区| 襄垣县| 马山县| 贵定县| 铁力市| 云龙县| 海盐县| 靖西县|