gpt4 book ai didi

javascript - 使用 Click 或 Escape 键调用 setState

转载 作者:行者123 更新时间:2023-11-29 20:40:02 30 4
gpt4 key购买 nike

我有一个 React Modal,它通过 handler function 打开和关闭。

我想通过点击事件或使用 esc 键来调用该函数以提供辅助功能建议。

如何同时跟踪这两个事件?

到目前为止,我得到了 esc 事件:

 handleCloseModal = event => {
if (event.keyCode === 27) {
this.setState({ modal: false })
}
}

但后来我失去了点击功能

<Modal 
onClick={handleCloseModal}
role="button" tabIndex={0}
onKeyDown={handleCloseModal}
/>

我该怎么办?

最佳答案

一个可能的解决方案是:创建一个单独的函数来关闭 Modal。将该函数用于 onClick 并在按下 esc 键时调用它。

像这样:

<Modal 
onClick={handleCloseModal}
role="button" tabIndex={0}
onKeyDown={handleKeyDown}
/>

handleKeyDown = event => {
if (event.keyCode === 27) {
handleCloseModal()
}
}

handleCloseModal = () => this.setState({ modal: false })

关于javascript - 使用 Click 或 Escape 键调用 setState,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55803345/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com