Material-UI:由于在 DataGrid 中失去焦点而无法删除输入值

IT技术 reactjs input datagrid material-ui focus
2021-05-18 09:08:52

我正在尝试使用 Material-UI DataGrid我想在表格的一列内使用一个按钮。这个按钮必须是一个带有表单的模态。当我这样做时,我注意到我可以在表单输入中输入,但我不能用删除键和退格键删除,因为焦点丢失了,我如何理解它的焦点是在表格上,而不是在模态输入上。使用文档中的默认示例,我在 CodeSandbox 上做了一个简单的示例。来自那里的输入具有相同的行为。

附注。试着输入一些东西然后退格。你有什么主意吗?

编辑 https://codesandbox.io/s/material-demo-forked-rselz

1个回答

这可以通过调用可以轻松解决stopPropagation()keydown在事件TextField它可以防止DataGrid拦截您的keydown事件并做自己的事情:

renderCell: () => <TextField onKeyDown={(e) => e.stopPropagation()} />

现场演示

编辑 66824289/失去焦点和意外行为输入内部数据网格材料用户界面