在反应打字稿中全局检测按键?
我想检测整个网站上的按键,即全局监听按键。我尝试在 React 中添加 onKeyDown 属性,但它没有捕获全局事件
<div onKeyPress={(e) => console.log(e)}>
<MainLayout visualizerMode={true} />
</div>
I want to detect key press on whole website that is to listen keypress globally. I tried adding onKeyDown property on div in react but it doesn't catch global event
<div onKeyPress={(e) => console.log(e)}>
<MainLayout visualizerMode={true} />
</div>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您应该使用析构函数,否则您将通过组件重新渲染来重复事件。
You should use destructor, otherwise You will duplicate events with component re-render.
这可以通过监听文档对象中的
onKeyDown
类型事件来实现。将其添加到您的反应组件中:
希望它有帮助!
This can be achieved by listening to
onKeyDown
type event, in document object.Add this to your react component:
Hope, it's helpful!