在ExtJS中执行特定行时,浏览器会被挂起

时间:2016-02-19 11:53:04

标签: javascript extjs

我使用ExtJS gridview加载数据。我有大约4000条记录,其中每条记录有60个单元格意味着gridview中有60列。我观察到我的后端服务器平均在15秒内响应我,这是可以接受的情况。成功回复后,我在gridview的列菜单中绑定了hide / show事件。为此,我将获取gridview的HeaderContainer(headerCt)和列项,如下所示

var menu = grid.headerCt.getMenu().down('#columnItem');

由于此浏览器在特定时间内无响应,此行大约需要50秒到一分钟才能执行。 (我已经在Google Chrome调试器中查看过了。)

有没有其他方法可以摆脱这种情况?

2 个答案:

答案 0 :(得分:0)

在你的网格添加插件中,这必须帮助

plugins: [
    Ext.create('Ext.grid.plugin.BufferedRenderer', {

    })
]

答案 1 :(得分:0)

尝试将这一行放在这两个函数之间。

    Ext.suspendLayouts();
    Ext.resumeLayouts(true);

如果有任何布局更改,上面的函数将提高性能。