Extjs形成性能问题

时间:2010-02-07 22:33:25

标签: extjs

我们使用带有几个输入字段的大输入表单并遇到性能问题。确切的问题是表单的渲染时间。显示表格需要几秒钟(4-10秒)。 我们使用多列布局和由json数据存储加载的~30个组合字段和另外~10个输入字段。 渲染过程非常慢,因此我可以看到表单的对齐和显示过程。有没有办法加快显示过程?

4 个答案:

答案 0 :(得分:1)

尝试在单个插槽中获取所有组合框数据,然后使用store.load方法加载数据

答案 1 :(得分:0)

JSONStores加载的数据是否会导致对齐发生变化?关闭所有JSONStore然后测量渲染过程 - 你会发现浏览器需要很长时间才能发出30个后端请求!

答案 2 :(得分:0)

我也建议您的商店是问题所在。你试过FireFox吗?或者@JJ建议,不要加载商店,看看会发生什么。我还建议懒洋洋地渲染你的表格,但似乎你的问题涉及商店。

我在加载商店时看到了类似的缓慢(通常后端查询需要花费大量时间)。因此,我创建了一个AJAX调用来检索所有商店数据。在AJAX回调中,解析有效负载的内容并适当地分发到每个商店。

答案 3 :(得分:0)

这可能对某人有帮助:

我们在使用多个复选框时遇到同样的问题,this帖子可以帮助我们解决问题。

每当Form或其他容器添加元素时,它的布局都会重新计算。当存在大量元素时,这会导致渲染问题。

所以,你可以:

  1. 一次性添加所有孩子:
  2.     container.add(panel, button, grid);
    
    1. 暂停布局重新计算:
    2.     container.suspendLayout = true;
          addSomething();
          container.suspendLayout = false;
          container.doLayout();