useKeyPress
此钩子允许您监听特定的键代码,并告诉您它们当前是否被按下。
import { useKeyPress } from '@xyflow/react';
export default function () {
const spacePressed = useKeyPress('Space');
const cmdAndSPressed = useKeyPress(['Meta+s', 'Strg+s']);
return (
<div>
{spacePressed && <p>Space pressed!</p>}
{cmdAndSPressed && <p>Cmd + S pressed!</p>}
</div>
);
}签名
| 名称 | 类型 | 默认值 |
|---|---|---|
# keyCode | 字符串 | 字符串[] | null字符串可以用来表示单个键代码,例如“Space”,或者键的组合,例如“Meta+s”。如果您传入一个字符串数组,则可以使用多个键代码来切换钩子。 | |
# options | 对象 | |
# options.target | Window | Document | HTMLElement | ShadowRoot | null您可能想要监听特定元素上的按键事件。此字段允许您配置! | |
# options.actInsideInputWithModifier | 布尔值您可以使用此标志来防止在输入字段获得焦点时触发按键钩子。 | |
#返回值 | | |
布尔值 | |
说明
- 此钩子不依赖于
ReactFlowInstance,因此您可以在应用程序中的任何地方自由使用它!