useKeyPress
Detecta pulsaciones de teclas del teclado con soporte opcional de callback.
Importar
Sección titulada «Importar»import { useKeyPress, useKeyPressCallback } from 'asterui'Basado en estado
Sección titulada «Basado en estado»function KeyPressExample() { const escapePressed = useKeyPress('Escape')
useEffect(() => { if (escapePressed) closeModal() }, [escapePressed])
return <div>{escapePressed ? 'Escape pressed!' : 'Press Escape'}</div>}Basado en callback
Sección titulada «Basado en callback»function CallbackExample() { useKeyPressCallback('Escape', () => closeModal()) useKeyPressCallback('Enter', () => submitForm(), { preventDefault: true })
return <Form>...</Form>}Parámetros
Sección titulada «Parámetros»useKeyPress
Sección titulada «useKeyPress»| Parámetro | Tipo | Descripción |
|---|---|---|
targetKey | string | Tecla a detectar (ej., 'Enter', 'Escape', 'a') |
options | UseKeyPressOptions | Opciones de configuración |
useKeyPressCallback
Sección titulada «useKeyPressCallback»| Parámetro | Tipo | Descripción |
|---|---|---|
targetKey | string | Tecla a detectar |
callback | (event: KeyboardEvent) => void | Función a llamar |
options | UseKeyPressOptions | Opciones de configuración |
Opciones
Sección titulada «Opciones»| Propiedad | Tipo | Predeterminado | Descripción |
|---|---|---|---|
target | HTMLElement | Window | window | Elemento objetivo para el listener |
event | 'keydown' | 'keyup' | 'keydown' | Tipo de evento a escuchar |
preventDefault | boolean | false | Prevenir comportamiento predeterminado del navegador |
Valor de Retorno (useKeyPress)
Sección titulada «Valor de Retorno (useKeyPress)»| Tipo | Descripción |
|---|---|
boolean | True mientras la tecla está presionada |