useKeyPress
Detecta pressionamentos de tecla do teclado com suporte opcional a callback.
Importação
Seção intitulada “Importação”import { useKeyPress, useKeyPressCallback } from 'asterui'Baseado em Estado
Seção intitulada “Baseado em Estado”function KeyPressExample() { const escapePressed = useKeyPress('Escape')
useEffect(() => { if (escapePressed) closeModal() }, [escapePressed])
return <div>{escapePressed ? 'Escape pressed!' : 'Press Escape'}</div>}Baseado em Callback
Seção intitulada “Baseado em Callback”function CallbackExample() { useKeyPressCallback('Escape', () => closeModal()) useKeyPressCallback('Enter', () => submitForm(), { preventDefault: true })
return <Form>...</Form>}Parâmetros
Seção intitulada “Parâmetros”useKeyPress
Seção intitulada “useKeyPress”| Parâmetro | Tipo | Descrição |
|---|---|---|
targetKey | string | Tecla para detectar (ex: 'Enter', 'Escape', 'a') |
options | UseKeyPressOptions | Opções de configuração |
useKeyPressCallback
Seção intitulada “useKeyPressCallback”| Parâmetro | Tipo | Descrição |
|---|---|---|
targetKey | string | Tecla para detectar |
callback | (event: KeyboardEvent) => void | Função para chamar |
options | UseKeyPressOptions | Opções de configuração |
| Propriedade | Tipo | Padrão | Descrição |
|---|---|---|---|
target | HTMLElement | Window | window | Elemento alvo para o ouvinte |
event | 'keydown' | 'keyup' | 'keydown' | Tipo de evento para ouvir |
preventDefault | boolean | false | Prevenir comportamento padrão do navegador |
Valor de Retorno (useKeyPress)
Seção intitulada “Valor de Retorno (useKeyPress)”| Tipo | Descrição |
|---|---|
boolean | Verdadeiro enquanto a tecla está pressionada |