如何覆盖 EXTJS 摘要的总和?

How can I override the total sum of the EXTJS summary?

我正在使用 EXTJS 4.2.1,我的应用程序有一个网格,包括分页、分组摘要和摘要功能。我想覆盖汇总功能的总和,因为它应该显示整个数据集的总和,而不仅仅是当前显示的页面。 是否可以覆盖摘要功能来这样做?

非常感谢您提前提出的每一个建议。 :-)

在列配置中使用 summaryRenderer。这是 ExtJS 的一个未记录的功能,允许您在摘要行中显示自定义数据。

您必须在服务器端汇总数据并将它们发送到客户端,您将在 summaryRenderer 中访问它。

像这样:

columns: {
    items: [
        {
            text: "Column A",
            dataIndex: "field_A",
            summaryRenderer: function( value, summaryData, dataIndex ) {
                var grid = this;

                // Get the value here and return it
                var result = functionToGetValue( grid );

                return result;
            }
        },
        // ...
    }
]

functionToGetValue 是您传递从服务器发送给客户端的摘要值的地方。

你怎么做取决于你的代码。您可以通过 grid.getStore().

访问商店

可以把汇总数据加到每条记录上,然后干脆用store.getAt(0).get( 'summaryValue' ),有点浪费,不过简单又好用