plane/web/core/hooks/use-keypress.tsx
2024-06-11 14:39:52 +05:30

20 lines
464 B
TypeScript

import { useEffect } from "react";
const useKeypress = (key: string, callback: (event: KeyboardEvent) => void) => {
useEffect(() => {
const handleKeydown = (event: KeyboardEvent) => {
if (event.key === key) {
callback(event);
}
};
document.addEventListener("keydown", handleKeydown);
return () => {
document.removeEventListener("keydown", handleKeydown);
};
}, [key, callback]);
};
export default useKeypress;