/** * 屏幕尺寸 Hook */ import { useMemo } from 'react'; import { useWindowDimensions } from './useWindowDimensions'; import { useBreakpoint } from './useBreakpoint'; export interface ScreenSizeInfo { width: number; height: number; isMobile: boolean; isTablet: boolean; isDesktop: boolean; isWide: boolean; } /** * 屏幕尺寸 Hook * 返回屏幕尺寸和断点信息 */ export function useScreenSize(): ScreenSizeInfo { const { width, height } = useWindowDimensions(); const { isMobile, isTablet, isDesktop, isWide } = useBreakpoint(); return useMemo(() => ({ width, height, isMobile, isTablet, isDesktop, isWide, }), [width, height, isMobile, isTablet, isDesktop, isWide]); }