Sobes.tech
Middle

React үчүн атайын useScreenWidth(targetWidth) хук жазгыла, ал учурдагы экрандын кеңдигин (screenWidth) жана isMobile белгисин (эгер учурдагы кеңдик targetWidthтен кичинекей болсо true) кайтарат. Хук терезенин өлчөмү өзгөргөндө жаңыланууга тийиш.

sobes.tech AI

AIден жооп

jsx import { useState, useEffect } from 'react';

function useScreenWidth(targetWidth) { const [screenWidth, setScreenWidth] = useState(window.innerWidth);

useEffect(() => { function handleResize() { setScreenWidth(window.innerWidth); }

window.addEventListener('resize', handleResize);
return () => window.removeEventListener('resize', handleResize);

}, []);

const isMobile = screenWidth < targetWidth;

return { screenWidth, isMobile }; }

export default useScreenWidth;


Этот хук отслеживает ширину окна браузера и обновляет состояние при изменении размера. Флаг `isMobile` устанавливается в `true`, если текущая ширина меньше `targetWidth`.