chore: useEventListener allow Ref<null>

This commit is contained in:
CrescentLeaf
2025-09-07 21:53:53 +08:00
parent afeab61468
commit abf06c71af

View File

@@ -1,8 +1,8 @@
import * as React from 'react' import * as React from 'react'
export default function useEventListener<T extends HTMLElement>(ref: React.MutableRefObject<T>, eventName: string, callback: (event: Event) => void) { export default function useEventListener<T extends HTMLElement | null>(ref: React.MutableRefObject<T>, eventName: string, callback: (event: Event) => void) {
React.useEffect(() => { React.useEffect(() => {
ref.current.addEventListener(eventName, callback) ref.current!.addEventListener(eventName, callback)
return () => ref.current.removeEventListener(eventName, callback) return () => ref.current!.removeEventListener(eventName, callback)
}, [ref, eventName, callback]) }, [ref, eventName, callback])
} }