Ir al contenido

useKeyPress

Detecta pulsaciones de teclas del teclado con soporte opcional de callback.

import { useKeyPress, useKeyPressCallback } from 'asterui'
function KeyPressExample() {
const escapePressed = useKeyPress('Escape')
useEffect(() => {
if (escapePressed) closeModal()
}, [escapePressed])
return <div>{escapePressed ? 'Escape pressed!' : 'Press Escape'}</div>
}
function CallbackExample() {
useKeyPressCallback('Escape', () => closeModal())
useKeyPressCallback('Enter', () => submitForm(), { preventDefault: true })
return <Form>...</Form>
}
ParámetroTipoDescripción
targetKeystringTecla a detectar (ej., 'Enter', 'Escape', 'a')
optionsUseKeyPressOptionsOpciones de configuración
ParámetroTipoDescripción
targetKeystringTecla a detectar
callback(event: KeyboardEvent) => voidFunción a llamar
optionsUseKeyPressOptionsOpciones de configuración
PropiedadTipoPredeterminadoDescripción
targetHTMLElement | WindowwindowElemento objetivo para el listener
event'keydown' | 'keyup''keydown'Tipo de evento a escuchar
preventDefaultbooleanfalsePrevenir comportamiento predeterminado del navegador
TipoDescripción
booleanTrue mientras la tecla está presionada