valueGetter 未反映在 rowdata ag-grid 中
valueGetter is not reflecting in rowdata ag-gird
我正在使用 ag-grid 社区版进行开发。我遇到了 valuegetter 来动态渲染单元格数据。
但它没有反映在行数据变量中。
下面是我的columndef
columnDefs = [
{ headerName: 'Student Name', field: 'name' },
{ headerName: 'English', field: 'english' },
{ headerName: 'Maths', field: 'maths' },
{ headerName: 'Science', field: 'science' },
{
headerName: 'Total',
field: 'total',
valueGetter: params => {
let totalValue = 0;
totalValue =
parseInt(params.data.english) +
parseInt(params.data.maths) +
parseInt(params.data.science);
return totalValue;
}
}
];
下面是我的行数据
rowData: StudentData[] = [
{ name: 'Rajesh', english: '10', maths: '21', science: '0', total: null }
];
我在哪里即时计算总数。
但是当我试图访问我的行数据中的总数时
它没有反映
onSave(): void {
console.log(this.rowData[0].total);
}
控制台正在打印 null 而不是 31
下面是我的 StackBlitz URL.Please 帮助我获取行数据模型中的值 getter 值
https://stackblitz.com/edit/angular-ivy-vkppt6?file=src%2Fapp%2Fapp.component.ts
您只是获取(呈现)处理后的数据。
您必须将数据分配给相应列的 field/property。
因此,在 ValueGetter
中添加:
params.data.total = totalValue;
我正在使用 ag-grid 社区版进行开发。我遇到了 valuegetter 来动态渲染单元格数据。
但它没有反映在行数据变量中。
下面是我的columndef
columnDefs = [
{ headerName: 'Student Name', field: 'name' },
{ headerName: 'English', field: 'english' },
{ headerName: 'Maths', field: 'maths' },
{ headerName: 'Science', field: 'science' },
{
headerName: 'Total',
field: 'total',
valueGetter: params => {
let totalValue = 0;
totalValue =
parseInt(params.data.english) +
parseInt(params.data.maths) +
parseInt(params.data.science);
return totalValue;
}
}
];
下面是我的行数据
rowData: StudentData[] = [
{ name: 'Rajesh', english: '10', maths: '21', science: '0', total: null }
];
我在哪里即时计算总数。
但是当我试图访问我的行数据中的总数时 它没有反映
onSave(): void {
console.log(this.rowData[0].total);
}
控制台正在打印 null 而不是 31
下面是我的 StackBlitz URL.Please 帮助我获取行数据模型中的值 getter 值
https://stackblitz.com/edit/angular-ivy-vkppt6?file=src%2Fapp%2Fapp.component.ts
您只是获取(呈现)处理后的数据。
您必须将数据分配给相应列的 field/property。
因此,在 ValueGetter
中添加:
params.data.total = totalValue;