0

我正在使用 GridX 来显示数据,但我经常更改 GridX 正在使用的数据存储。我通过使用grid.setStore()并传入一个 Dojo JsonStore 来做到这一点(这当然是异步数据)。每次更改数据存储时,我都不会重新创建网格,只需调用setStore(), 然后refresh().

网格还激活了 NestedSort 模块。我的问题是这样的:

如果用户对商店进行排序,然后选择一组不同的数据进行查看,代码调用:

grid.sort.clear();
grid.setStore( /* new store*/ );
grid.refresh();

在不.clear()被调用的情况下,网格将尝试对新存储的数据进行排序(这通常是无效的,并抛出 500)。

使用.clear(),存储将调用服务器对第一个数据存储进行排序,然后再调用下一个数据存储的新批次。

理想情况下,我想告诉网格在获取下一组数据之前清除任何排序首选项,这样它就不会尝试对其进行排序。我不希望它在被替换之前立即对第一个数据进行额外调用。

4

1 回答 1

0

我终于解决了。要清除网格中的排序信息,您必须修改网格模型。网格模型中的排序可以使用以下方法完成:

grid.model.sort();
于 2015-07-01T15:51:39.470 回答