如何解决当我们在编辑模式下从一个单元格导航到另一个单元格时,是否会触发事件-网格
我一直在使用Ag Grid社区和企业版本-版本21。我有一个用例,每次单元格值更改时,我都需要调用api。我知道onCellValueChanged事件将在单个单元格编辑模式下在每个单元格中完成编辑后触发。但是我正在使用全行编辑模式。因此,在我的情况下,onCellValueChanged事件将在所有列的行编辑结束时完全触发。但是我正在寻找一个事件,该事件在每个单元格被编辑后以及导航到下一个单元格时将被调用。我搜索了农业网格文档,但找不到任何此类事件。不知道我是否想念一些东西。任何帮助将非常感激。提前致谢。干杯!
解决方法
如果您假设用户将使用快捷方式移至下一个/上一个单元格,则可以执行此操作。在单元格之间跳转的默认快捷方式是Tab
和Shift
+ Tab
。因此,实现方法是监听onCellKeyDown
事件,以了解用户何时在编辑器单元格之间跳转,并使用更新后的值调用API
<AgGridReact
editType="fullRow"
onCellKeyDown={(e) => {
const TAB_KEY = 9;
const getValue = () =>
e.api
.getCellEditorInstances({ rowNodes: [e.node] })
.map((instance) => instance.eInput.value);
if (e.event.shiftKey) {
if (e.event.keyCode === TAB_KEY) {
console.log("Jump to previous editor");
console.log(getValue());
}
} else if (e.event.keyCode === TAB_KEY) {
console.log("Jump to next editor");
console.log(getValue());
}
}}
{...}
/>
实时示例
打开控制台以查看更改
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。