这个问题可能是由于您没有正确设置valueGetter所导致的。valueGetter用于从数据源中获得单元格值,使用valueSetter进行更新。如果valueGetter是不正确的,那么更新也将无法正确反映在单元格中。
以下是一个正确设置valueGetter并使用valueSetter更新单元格值的示例:
// 定义valueGetter和valueSetter const valueGetter = (params) => { return params.data.name; // 返回数据源中的名称字段 }
const valueSetter = (params) => { params.data.name = params.newValue; // 将单元格中的值更新到数据源中的名称字段 return true; }
// 在列定义中使用valueGetter和valueSetter const columnDefs = [ {headerName: '名称', field: 'name', valueGetter: valueGetter, valueSetter: valueSetter}, {headerName: '年龄', field: 'age'} ];
// 创建grid const gridOptions = { columnDefs: columnDefs, rowData: rowData }; new agGrid.Grid(gridDiv, gridOptions);
在这个示例中,我们定义了一个valueGetter函数,它从数据源中获取“name”字段的值。我们还定义了valueSetter函数,它将单元格中的新值(params.newValue)更新到数据源中的“name”字段。
在列定义中,我们将valueGetter和valueSetter分别与包含名称和年龄的列关联起来。最后,我们创建了一个新的agGrid实例,并将其与包含我们定义的列和数据的gridDiv元素相关联。
使用此方法,您应该能够正确更新网格中的单元格值并将其反映在您的界面中。
上一篇:ag-grid阻止行拖放