我试图找到一个属性,该属性可以为我提供每个ExtJs网格组中的项目数,以便仅在有多个项目的情况下才可以折叠该组。我尝试在grdItems上添加手表,但无法获得显示正确值的正确属性。

var view = Ext.getCmp('Grid').getView();
var groupFeature = view.getFeature('groupSummary');
grdItems = view.getEl().query('.x-grid-group-hd');

if (grdItems.length > 0)
{
    for (i = 0; i < grdItems.length; i++)
    {
    }
}


当我执行此grdItems [i] .children.length时,即使每个组超过1,它也会为每个组提供“ 1”。

最佳答案

这可以在商店中完成,使用getGroups()


  返回商店的只读子集合的集合
  已应用分组的记录。这些子集合被维护
  在内部由集合组成。


例如:

var groups = grid.getStore().getGroups();

groups.each(function(group) {
    console.log(group.getGroupKey(), group.getCount());
});


工作示例:https://fiddle.sencha.com/#fiddle/1469

07-28 05:43