npm i @tm-project/use-window-size
React хук, который возвращает текущие размеры окна браузера.
import React from 'react'
import { WindowSizeProvider, useWindowSize} from '@tm-project/use-window-size'
const Component = () => {
const { width, height } = useWindowSize();
return (
<div>
<p>Ширина окна: {width}px</p>
<p>Высота окна: {height}px</p>
</div>
);
}
const App = () => {
return (
<WindowSizeProvider>
<Component/>
{/* Другие компоненты */}
</WindowSizeProvider>
);
}
Тип | Description | |
---|---|---|
width | number |
текущая ширина окна браузера в пикселях. |
height | number |
текущая высота окна браузера в пикселях. |
- Этот хук использует контекст для предоставления размеров окна браузера всем дочерним компонентам
WindowSizeProvider
приresize
иorientationchange
. Контекст используеться для того, чтобы избежать создания дополнительных слушателей событий, если рассматривать аналогичные библиотеки. - Компонент
WindowSizeProvider
должен быть размещен выше в иерархии компонентов, чем компонент, который используетuseWindowSize
. - Если вы используете библиотеку
React Router
, компонентWindowSizeProvider
должен быть обернут в компонентRouter
для того, чтобыuseWindowSize
работал корректно.
MIT