React中Ag-Grid单元格编辑问题:指定行无法编辑
解决Ag-Grid React中部分单元格不可编辑的问题
问题根源
你写的editable函数里错误访问了params.data.rowIndex——rowIndex是params对象自身的属性,并非每行数据(params.data)的一部分。另外要确认defaultColDef已经正确传递给AgGrid组件。
修正后的代码
- 修正
editable的判断逻辑:
const defaultColDef = { // 直接访问params.rowIndex,而非params.data.rowIndex editable: (params) => params.rowIndex === 2 || params.rowIndex === 3, resizable: true, sortable: false };
- 确保在AgGrid组件中正确绑定
defaultColDef:
<AgGridReact defaultColDef={defaultColDef} rowData={yourRowData} columnDefs={yourColumnDefs} // 其他必要属性... />
额外说明
- 如果需要针对特定列设置不同的编辑规则,可以在
columnDefs里单独定义editable属性,优先级会高于defaultColDef。 - 若要根据单元格数据判断(比如某字段值满足条件才允许编辑),可以用
params.data.yourFieldName来访问目标字段。
内容的提问来源于stack exchange,提问作者Divyaa01
相关产品推荐
相关产品推荐

