Java Sencha GXT网格过滤器速度较慢。我能快点吗?
我使用带有过滤器的GXT网格(确切地说是StoreFilterField)。 问题在于,当过滤器发生变化时(用户键入或清除某个内容),网格需要很长时间才能刷新 我有一个1000行7列的相对较小的网格。滚动效果很好,所以我相信浏览器能够快速处理它 看起来问题在于,当一个类型的过滤器文本方法Grid.refresh()被调用时,它会一次又一次地呈现所有行,并将它们作为一个巨大的HTML字符串插入 有没有办法提高效率?例如,我认为在现有html中隐藏包含未过滤行集的元素会更快 另一种方法是以某种方式缓存或延迟网格中组件的创建,但我在GXT网格API中找不到任何行缓存功能。也许我忽略了Java Sencha GXT网格过滤器速度较慢。我能快点吗?,java,gwt,extjs,gxt,Java,Gwt,Extjs,Gxt,我使用带有过滤器的GXT网格(确切地说是StoreFilterField)。 问题在于,当过滤器发生变化时(用户键入或清除某个内容),网格需要很长时间才能刷新 我有一个1000行7列的相对较小的网格。滚动效果很好,所以我相信浏览器能够快速处理它 看起来问题在于,当一个类型的过滤器文本方法Grid.refresh()被调用时,它会一次又一次地呈现所有行,并将它们作为一个巨大的HTML字符串插入 有没有办法提高效率?例如,我认为在现有html中隐藏包含未过滤行集的元素会更快 另一种方法是以某种方式缓
非常感谢您的帮助。缓存功能不是在
网格
API本身中找到的,而是在网格视图
中找到的。栅格具有可以设置的视图属性
您使用的是什么版本的GXT?在GXT 2.x中,有一个名为BufferView
的视图变量
从文件:
在滚动到视图中时渲染行。此GridView一次显示多行的速度很快,但它不支持普通{link@GridView}支持的所有功能,例如扩展行
如果您使用的是GXT 3.x,则可能必须改用LiveGridView
,因为它们已删除BufferView
从中,您可以指定缓存大小、滚动延迟等
我希望这有帮助
- 保罗