Files
genome2025/frontend/src/hooks/use-media-query.ts
2025-12-09 17:02:27 +09:00

18 lines
443 B
TypeScript

import * as React from "react"
export function useMediaQuery(query: string) {
const [matches, setMatches] = React.useState<boolean>(false)
React.useEffect(() => {
const mql = window.matchMedia(query)
const onChange = () => {
setMatches(mql.matches)
}
mql.addEventListener("change", onChange)
setMatches(mql.matches)
return () => mql.removeEventListener("change", onChange)
}, [query])
return matches
}