[英]ag-Grid row not deleting
我正在尝试从我的 ag-Grid 中删除一行,如下所示:
let alertRow : RowNode = this.gridApi.getRowNode(rowIndex);
console.log(alertRow);
this.gridApi.updateRowData({remove: [alertRow]});
它给了我这个错误:
ag-Grid:找不到数据项,因为找不到对象
我可以在控制台中看到RowNode
是正确的节点并且存在。 我也可以使用updateRowData()
添加新行,但尝试删除会出现此错误。
我在 Angular 6 组件中使用 ag-Grid。
为什么删除不起作用?
将updateRowData({remove:[alerRow]})
替换为
updateRowData({remove:[alertRow.data]}))
更新文档
... 如果您不使用 ID,则网格将根据对象引用匹配行。
不完全确定这是添加到un.spike's answer的正确位置/方式,但如果您使用getSelectedNodes方法获取您要删除的数据,则语法略有不同(需要索引到选定的节点)。
(两者都假设您使用的是单行选择)
获取选定节点
const selectedNode = this.gridApi.getSelectedNodes();
this.gridApi.updateRowData({ remove: [selectedNode[0].data] });
而且,为了“完整性”,
getSelectedRows (即使 API 建议使用getSelectedNodes
)
const selectedRow = this.gridApi.getSelectedRows();
this.gridApi.updateRowData({ remove: selectedRow });
如果你使用 vue.js,你可以使用这几行代码:
获取选择行, const selectedRow = this.gridApi.getFocusedCell()
通过选择行获取节点 const node = this.gridApi.getRowNode(selectedRow.rowIndex)
ApplyTransaction 通过节点的数据移除节点。 this.gridApi.applyTransaction({ remove: [node.data] })
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.