我正在使用 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' )
,这有点浪费,但它很简单并且有效。