参考钩子

useKeyPress

GitHub 上的源代码

此钩子允许您监听特定的键代码,并告诉您它们当前是否被按下。

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
布尔值
您可以使用此标志来防止在输入字段获得焦点时触发按键钩子。
true
#返回值
布尔值

说明

  • 此钩子不依赖于ReactFlowInstance,因此您可以在应用程序中的任何地方自由使用它!