【问题标题】:ExtJs 5 Grid sorting with phantom recordsExtJs 5 使用幻像记录进行网格排序
【发布时间】:2015-06-07 18:25:27
【问题描述】:

在 ExtJs 5 中,在向已排序的网格添加新行时,新行永远不会添加到网格的顶部。是否有可能让存储在排序期间忽略虚拟记录并始终将其添加到顶部/或我们指定的任何位置?

【问题讨论】:

    标签: extjs extjs5


    【解决方案1】:

    没有。我读过的理由是这是故意的,因为商店可以排序或未排序,而不是某种中间状态(商店是否排序的答案必须是“真”或“假”)。如果商店有分拣机,它将保持井井有条。 Sencha 不会改变这种行为。

    这并不理想,但在将记录添加到商店之前,我将删除现有的排序器。这很不幸,但它快速、简单且不易被用户注意到。删除现有的排序器不会重新排列网格的行(因为您没有应用任何新的排序功能)。因此,网格将继续显示为已排序,只是未强制执行。

    var store = myStore,
        sorters = store.getSorters();
    
    if (sorters.getCount()) {
        console.log('[' + store.$className + '] Removed Existing Sorters', {
            store: store,
            sorters: sorters
        });
        sorters.removeAll();
    
        store.fireEvent('refresh', store); // will remove sort icon from grid column headers
    }
    
    store.insert(newRowIndex, newRec)
    

    【讨论】:

    【解决方案2】:

    我们应该在 store 中添加以下属性:

    autoSort: 假

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-19
      • 2013-02-12
      • 1970-01-01
      • 1970-01-01
      • 2014-06-15
      • 1970-01-01
      相关资源
      最近更新 更多