如何覆盖 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' )
,有点浪费,不过简单又好用
我正在使用 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' )
,有点浪费,不过简单又好用