@accessible/use-keycode
TypeScript icon, indicating that this package has built-in type declarations

4.0.2 • Public • Published

useKeycode()

Bundlephobia Code coverage Build status NPM Version MIT License

npm i @accessible/use-keycode

A React hook for handling specific key codes with a callback on keydown

Quick Start

import {useKeycode, useKeycodes} from '@accessible/use-keycode'
// one keycode
const Component = () => {
  // logs event when escape key is pressed
  const ref = useKeycode(27, console.log)
  return <div ref={ref} />
}
// several keycodes
const Component = () => {
  // logs event when escape or enter key is pressed
  const ref = useKeycodes({27: console.log, 13: console.log})
  return <div ref={ref} />
}

API

useKeycode(which: number, callback: (event?: KeyboardEvent) => any)

Arguments

Argument Type Default Required? Description
which number undefined Yes The event.which you want to trigger the callback
callback (event?: KeyboardEvent) => any undefined Yes The callback you want to trigger when the event.which matches the latest keyUp event

Returns React.MutableRefObject<any>

useKeycodes(handlers: Record<number, (event?: KeyboardEvent) => any>)

Arguments

Argument Type Default Required? Description
handlers Record<number, (event?: KeyboardEvent) => any> undefined Yes An object with keys matching the event.which you want to trigger the callback value

Returns React.MutableRefObject<any>

LICENSE

MIT

Package Sidebar

Install

npm i @accessible/use-keycode

Weekly Downloads

1,608

Version

4.0.2

License

MIT

Unpacked Size

28.5 kB

Total Files

25

Last publish

Collaborators

  • jaredlunde