react-recipes
Version:
A React Hooks utility library containing popular customized hooks
50 lines (40 loc) • 1.06 kB
Markdown
for Javascript
- `queries: Array`: List of Media Query strings
- `values: Array`: List of values that correlates to the query list
- `defaultValue: Any`: default value of media query
- `value: Any`:
```js
import { useMedia } from "react-recipes";
function App() {
// See if user has set a browser or OS preference for dark mode.
const prefersDarkMode = useMedia(
["(prefers-color-scheme: dark)"],
[ ],
false
);
const columnCount = useMedia(
// Media queries
["(min-width: 1500px)", "(min-width: 1000px)", "(min-width: 600px)"],
// Column counts (relates to above media queries by array index)
[ ],
// Default column count
2
);
let columnHeights = new Array(columnCount).fill(0);
let columns = new Array(columnCount).fill().map(() => []);
return (
<div>
<input
type="text"
placeholder="Enter your name"
value={name}
onChange={e => setName(e.target.value)}
/>
</div>
);
}
```
Media Queries