const input_editor = new VTable_editors.InputEditor({});
VTable.register.editor('input', input_editor);
var tableInstance;
const records = [
{
num:0.1
},
{
num:0.2
},
];
const columns = [
{
field: 'num',
title: '数值',
width: 80,
aggregation: {
aggregationType: VTable.TYPES.AggregationType.SUM,
formatFun(value) {
return '汇总:'+value;
}
}
}
];
const option = {
container: document.getElementById(CONTAINER_ID),
records,
// dataConfig: {
// filterRules: [
// {
// filterFunc: (record: Record<string, any>) => {
// return record.id % 2 === 0;
// }
// }
// ]
// },
columns,
tooltip: {
isShowOverflowTextTooltip: true
},
frozenColCount: 1,
bottomFrozenRowCount: 2,
rightFrozenColCount: 1,
overscrollBehavior: 'none',
autoWrapText: true,
widthMode: 'autoWidth',
heightMode: 'autoHeight',
dragOrder: {
dragHeaderMode: 'all'
},
keyboardOptions: {
pasteValueToCell: true
},
eventOptions: {
preventDefaultContextMenu: false
},
pagination: {
perPageCount: 100,
currentPage: 0
},
theme: VTable.themes.DEFAULT.extends({
bottomFrozenStyle: {
bgColor: '#ECF1F5',
borderLineWidth: [6, 0, 1, 0],
borderColor: ['gray']
}
}),
editor: 'input',
headerEditor: 'input',
aggregation(args) {
if (args.col === 1) {
return [
{
aggregationType: VTable.TYPES.AggregationType.MAX,
formatFun(value) {
return '最大ID:' + Math.round(value) + '号';
}
},
{
aggregationType: VTable.TYPES.AggregationType.MIN,
showOnTop: false,
formatFun(value, col, row, table) {
return '最小ID:' + Math.round(value) + '号';
}
}
];
}
if (args.field === 'salary') {
return [
{
aggregationType: VTable.TYPES.AggregationType.MIN,
formatFun(value) {
return '最低低低薪资:' + Math.round(value) + '元';
}
},
{
aggregationType: VTable.TYPES.AggregationType.AVG,
showOnTop: false,
formatFun(value, col, row, table) {
return '平均平均平均:' + Math.round(value) + '元 (共计' + table.recordsCount + '条数据)';
}
}
];
}
return null;
}
// transpose: true
// widthMode: 'adaptive'
};
tableInstance = new VTable.ListTable(option);
// tableInstance.updateFilterRules([
// {
// filterKey: 'sex',
// filteredValues: ['boy']
// }
// ]);
window.tableInstance = tableInstance;
tableInstance.on('change_cell_value', arg => {
console.log(arg);
});
- OS:
- Browser:
- Framework:
Version
1.25.0
Link to Minimal Reproduction
https://visactor.com/vtable/demo/list-table-data-analysis/list-table-aggregation-multiple
Steps to Reproduce
将下面的代码复制到代码框中就能看到了
Current Behavior
Expected Behavior
修复一下吧
Environment
Any additional comments?
No response