我可以禁用 Material-UI SpeedDial 鼠标悬停事件吗

Can I disable the Material-UI SpeedDial mouseover event

我想禁用 Material-UI 的 SpeedDial 组件 (https://material-ui.com/api/speed-dial/) 的默认 mouseover/hover 行为。当前,当您将鼠标悬停在主图标上时,SpeedDial 组件将打开。它也将在单击时打开。这给我们的一些用户带来了问题,因为当他们将鼠标悬停在按钮上时 - 它会打开 - 他们会立即点击它并关闭。

我想为触摸屏设备保留打开 SpeedDial 的点击操作。

有没有简单的方法可以禁用 hover/mouseover 事件?据我所知 API 不允许这样做。

谢谢!

可以通过忽略 onOpen 属性并使用 onClick 属性控制组件来实现此行为。

// Component code

const [open, setOpen] = React.useState(false);

const handleOpen = (event) => {
  setOpen(!open);
};

return (
   <SpeedDial
      onClick={handleOpen}
      open={open}
      ...
   />
);

您可以在此处查看工作示例:https://codesandbox.io/s/material-demo-1lwci