UNPKG

@scaleway/use-media

Version:

A small hook to track CSS media query state

44 lines (30 loc) 1.06 kB
# `@scaleway/use-media` ## A small hook to track CSS media query state This library has been forked from [use-media](https://github.com/streamich/use-media), many thanks to the original author, [Vadim Dalecky](https://github.com/streamich). ## Install ```bash $ pnpm add @scaleway/use-media ``` ## Usage ### With `useEffect` ```tsx import { useMedia } from '@scaleway/use-media' const App = () => { // Accepts an object of features to test const isWide = useMedia({ minWidth: '1000px' }) // Or a regular media query string const reduceMotion = useMedia('(prefers-reduced-motion: reduce)') return <div>Screen is wide: {isWide ? '😃' : '😢'}</div> } ``` ### With `useLayoutEffect` ```tsx import { useMediaLayout } from '@scaleway/use-media' const App = () => { // Accepts an object of features to test const isWide = useMediaLayout({ minWidth: '1000px' }) // Or a regular media query string const reduceMotion = useMediaLayout('(prefers-reduced-motion: reduce)') return <div>Screen is wide: {isWide ? '😃' : '😢'}</div> } ```