Ag-grid : 单元格编辑器 Aginit 被调用两次

Posted

技术标签:

【中文标题】Ag-grid : 单元格编辑器 Aginit 被调用两次【英文标题】:Ag-grid : Cell Editors Aginit get called twice 【发布时间】:2020-07-21 06:33:18 【问题描述】:

Framework : Angular6+ 和 Ag Grid Api

我有实现AgEditorComponentCellEditorcomponent 并且在按键时,我开始使用agApi.startEditingCells(params) 进行编辑,并且为CellEditorComponent 执行Aginit()

CellEditingStartedEvent 正在侦听并进行服务器调用并根据响应允许编辑。为了确保用户不会将注意力从单元格中移出,我已经为相同的“Column and rowIndex with charpress, keyPress”调用了 agApi.startEditingCells(params),但 CellEditorComponent 被销毁并再次重新创建。 我有以下内容: 1) 如何防止agGridApi.StartEditingCell() 两次调用 CellEditor 的 AgInit()。 2) 是否从相同的列和行索引调用 StartEditingCell() 将重新创建 cellEditorcomponent?

【问题讨论】:

【参考方案1】:

如果我理解正确,您是从 CellEditorComponent 调用 startEditingCells。 您不应该这样做,因为如果您的 CellEditorComponent 处于活动状态,那么您已经在编辑。调用 startEditingCells 可能会导致网格破坏您的 CellEditorComponent 并创建一个新组件,因此多次调用 agInit

startEditingCells 用于从网格外部(通常从网格的父组件)手动触发编辑。

【讨论】:

您好,感谢您的回复,不,我没有在 CellEditorComponent 中执行 startEditingCells。这发生在父组件中

以上是关于Ag-grid : 单元格编辑器 Aginit 被调用两次的主要内容,如果未能解决你的问题,请参考以下文章

用 tinymce 编辑器替换单元格的 ag-grid 编辑器

如何在 ag-grid 中的单元格中使用和添加图标以指示该单元格是可编辑的

mat-datepicker 作为 ag-grid 弹出窗口的单元格编辑器显示为空白

使用 ag-grid 进行单元格编辑的自定义日期选择器

在行分组级别 ag-grid 启用对单元格字段的编辑

单击日期选择器时,单元格编辑器上的 Ag-grid Angular Material Datepicker 失去焦点